Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

mod_rewrite - Ordner vorgaukeln?

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Synonym
PostRank 10
PostRank 10
Beiträge: 3708
Registriert: 09.08.2008, 02:55

Beitrag von Synonym » 24.08.2011, 10:56

Nein, der Ordner ist keine Pflicht

RewriteRule ^([0-9]+)/$ index.php?id=$1 [L]

Würde alles beachten, was so aufgebaut ist: domain.tld/ZIFFERN/ .
Man beachte dabei, dass das nur das interne "umschreiben" ist. Die eigentlichen URLs musst Du schon alle ändern.

Aus einer URL /index.php?id=12345 wird also nicht automatisch ein /12345 aber aus einer URL /12345 wird intern ein /index.php?id=12345

Anzeige von ABAKUS

von Anzeige von ABAKUS »


Hochwertiger Linkaufbau bei ABAKUS:
  • Google-konformer Linkaufbau
  • nachhaltiges Ranking
  • Linkbuilding Angebote zu fairen Preisen
  • internationale Backlinks
Wir bieten Beratung und Umsetzung.
Jetzt anfragen: 0511 / 300325-0

Dublay
PostRank 1
PostRank 1
Beiträge: 10
Registriert: 24.08.2011, 08:20

Beitrag von Dublay » 24.08.2011, 12:06

Ah, super, so scheint es zu funktionieren. Jetzt sind nur alle Stylesheets und Bilder nicht mehr erreichbar, was natürlich auch logisch ist.

Wie kann man dies beheben?

Vielen Dank schonmal, es geht voran!

Synonym
PostRank 10
PostRank 10
Beiträge: 3708
Registriert: 09.08.2008, 02:55

Beitrag von Synonym » 24.08.2011, 12:15

Alle CSS und Bilder....

Ich wette, bei denen ist kein / vor dem Dateinamen, oder?

also wohl so eingebunden src="bild.jpg"....

Wenn dem so ist, dann mach aus denen einfach ein src="/bild.jpg"

Anzeige von ABAKUS

von Anzeige von ABAKUS »

SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Dublay
PostRank 1
PostRank 1
Beiträge: 10
Registriert: 24.08.2011, 08:20

Beitrag von Dublay » 24.08.2011, 12:23

Du solltest Buchhalter werden :)

Jetzt nur noch ein Problem. Ich habe vorher per $_GET auf die id zugegriffen und entsprechend die Inhalte der Webseite aus der DB gesucht.

Welcher Befehl liefert mir aus www.domain.de/12345/ die 12345?

Wiedermals Danke!

800XE
PostRank 10
PostRank 10
Beiträge: 5223
Registriert: 02.12.2004, 03:03

Beitrag von 800XE » 24.08.2011, 13:30

Dublay hat geschrieben:Du solltest Buchhalter werden :)

Jetzt nur noch ein Problem. Ich habe vorher per $_GET auf die id zugegriffen und entsprechend die Inhalte der Webseite aus der DB gesucht.

Welcher Befehl liefert mir aus www.domain.de/12345/ die 12345?
Du siehst den Baum vor lauter Wäldern nicht ... (oder wie war das?)

Ice Man hat geschrieben:RewriteRule ^artikel/([0-9]*)/$ index.php?id=$1 [L]
Welchen Sinn hätte das
wenn man dann
Ice Man hat geschrieben:index.php?id=$1 [L]
kein $_GET['id'] auslesen können könnte?

Dublay
PostRank 1
PostRank 1
Beiträge: 10
Registriert: 24.08.2011, 08:20

Beitrag von Dublay » 24.08.2011, 13:47

:) Ja, wohl war.

Vielen Dank, ich denke, ich habs verstanden und stürze mich mal weiter auf den Code.

Bis zur nächsten Frage :)

Dublay
PostRank 1
PostRank 1
Beiträge: 10
Registriert: 24.08.2011, 08:20

Beitrag von Dublay » 15.09.2011, 14:17

Weiter gehts...

Ich habe ein Formular mit 'post':

Code: Alles auswählen

<form action="<?php echo $_SERVER&#91;'PHP_SELF'&#93;; ?>" method="post">
<input name='wert1' ...
Was zu einem Aufruf wie www.domain.de/index.php führt.

Besteht dort irgendwie die Möglichkeit ohne 'get' zu verwenden, dass die Domain dann auch so aussieht: www.domain.de/wert1 ?
Lässt sich das auch über die .htaccess regeln?

Vielen Dank für Eure Hilfestellungen bisher, das hat mich gut weitergebracht!

Dublay
PostRank 1
PostRank 1
Beiträge: 10
Registriert: 24.08.2011, 08:20

Beitrag von Dublay » 05.10.2011, 10:20

Hallo,

ich suche leider immer noch nach einer Lösung für o.g. Problem. Ich würde mich über einen Lösungsansatz freuen!

Synonym
PostRank 10
PostRank 10
Beiträge: 3708
Registriert: 09.08.2008, 02:55

Beitrag von Synonym » 05.10.2011, 11:16

Besteht dort irgendwie die Möglichkeit ohne 'get' zu verwenden, dass die Domain dann auch so aussieht: www.domain.de/wert1 ?
Prinzipiell ja, wenn Du Dich mal in die Materie PHP und dort speziell in den Bereich Server-Variablen einliest.

https://php.net/manual/de/reserved.variables.server.php

Du verwendest als Ziel also "$_SERVER['PHP_SELF']". Das enthält aber eben "index.php" als Wert, da das das echte File ist, das intern requestet wurde.

Deine Rule war "RewriteRule ^([0-9]+)/$ index.php?id=$1 [L] ". File ist also "index.php". 'PHP_SELF' macht somit alles richtig.
'PHP_SELF': Der Dateiname des aktuell ausgeführten Skripts, relativ zum Document Root.
Wenn das Formular an sich selber senden soll, also an die aufgerufene Adresse, dann nimm auch den entsprechenden Wert und nicht das "aufgerufene File" ;-)

z.B.:
'REQUEST_URI': Der URI, der angegeben wurde, um auf die aktuelle Seite zuzugreifen, beispielsweise '/index.html'.

800XE
PostRank 10
PostRank 10
Beiträge: 5223
Registriert: 02.12.2004, 03:03

Beitrag von 800XE » 05.10.2011, 11:42

Synonym hat geschrieben: Wenn das Formular an sich selber senden soll,
so ist es bei mir normal ....

@Dublay

ich lass dazu einfach den action leer
in den Geckobrowser funkionirt es .... im (alten) IE gabs glaub schonmal Probleme

Code: Alles auswählen

$form .= '<form action="" method="post">'; 
$form .= '<input type="submit" name="doit" value="Buttonname" >'; 

if &#40; $_POST&#91;'doit'&#93; &#41;
&#123;
  //SQL und so
&#125;
else
&#123;
  echo &#40; $form &#41;;
&#125;


Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag