Die URL im Browser wäre
https://css-tricks.de/index.php/teachers/a/
Die tatsächliche Seite, die vom Server gerendert wird, wäre
https://css-tricks.de/index.php?search=teachers&sort=a
RewriteEngine on
RewriteRule ^index/([^/]+)/([^/]+).php /page.php?search=$1&sort=$2 [NC]
Ich glaube, du hast dich ein wenig vertan, das URL-Beispiel im Browser würde nicht zur Rewrite Rule passen. Das URL-Beispiel im Browser müsste „https://css-tricks.de/index/teachers/a/“ lauten.
Ich habe selbst damit herumgespielt und das funktioniert
https://css-tricks.de/examples/Rewrite/index.php/teachers/a/b/
Und das funktioniert nicht
https://css-tricks.de/examples/Rewrite/index/teachers/a/b/
Oh, ich glaube, der einzige Grund, warum es bei mir funktioniert, ist, dass ich Rewrite-Regeln habe, die es mir erlauben, die .php-Erweiterung zu entfernen.
Mir gefällt die Idee einer klareren URL, aber ich denke trotzdem, dass das Beibehalten von ‚index‘ oder ‚index.php‘ als Teil der URL nur wenig Mehrwert hat. Ich würde stattdessen etwas wie https://css-tricks.de/teachers/a/ bevorzugen.
Es ist eine klarere URL und verbessert wichtigerweise die SEO.
Kleines Problem. Wenn Sie zu etwas tiefer als zum Stammverzeichnis Ihrer Website verlinken möchten, wird dies als Argument in index.php übergeben.
Verwenden Sie stattdessen ein Schlüsselwort wie „search“, um sich mehr Spielraum zu verschaffen. Die resultierende https://css-tricks.de/search/teachers/a/ ist SEO-freundlich und Sie beschränken sich nur darauf, einen Ordner namens „search“ zu vermeiden.
verwende es https://css-tricks.de/examples/Rewrite/index.php/teachers/a/b/
Gut gemacht, danke Chris.
Es ist das, wonach ich gesucht habe, da es für PHP-basierte Websites sehr nützlich und auch SEO-freundlich ist.
Die Referenz-URL liefert die vollständigen Details. Danke auch für die Bereitstellung.
Hallo, Chris!
Ich kämpfe und spiele mit diesen .htaccess-Dateien, aber ich konnte sie nicht schreiben, damit sie funktionieren. Ich habe mod_rewrite aktiviert und doppelt geprüft, dass RewriteEngine in der .htaccess-Datei eingeschaltet ist.
Zum Beispiel habe ich ein Projekt, bei dem ich Abschnitte und Kategorien habe, und der Link sieht so aus: https:///eshop/index.php?section=fruits&category=apple
Wie kann ich diesen Link umschreiben, damit er so aussieht: https:///eshop/fruits/apple
Und ich habe auch eine ähnliche Situation innerhalb von WordPress.
Ich habe ein Theme erstellt, bei dem ich eine neue Engine für eine Art internes soziales Netzwerk erstellt habe, aber egal.
Zum Beispiel sieht der Link so aus: https:///liepa6vsk/klases/?classroom_id=5&page=gallery
Ich möchte, dass es so aussieht: https:///liepa6vsk/klases/classroom_name/gallery
Was soll ich in .htaccess schreiben, um das zu tun, und trotzdem die zuvor geschriebenen Rewrite-Regeln für WordPress nicht zu beschädigen?
Eine letzte Frage: Wird der Link schön aussehen, wenn im Link nur https:///liepa6vsk/klases/?classroom_id=5 steht (als https:///liepa6vsk/klases/classroom_name/)?
Wenn du meine Fragen löst, wirst du wie Gott für mich sein :)
@Robertr: Der folgende Code in Ihrer .htaccess-Datei behebt das erste Problem
RewriteEngine on #es sei denn, die Rewrite-Engine ist bereits deklariert
RewriteBase /eshop/ #wenn Sie keine Rewrite-Basis haben, kann dies Probleme mit Unterverzeichnissen verursachen.
RewriteRule ([^/]+)/([^/]+) index.php?section=$1&category=$2 [NC]
Was, wenn wir möchten, dass ?site={siteslug} zu *.mysite.com umgeleitet wird?
Die htaccess-Datei funktioniert nur auf Apache-Servern, aber ich benutze derzeit ASP, das diese Datei nicht über IIS ausführt. Gibt es andere Möglichkeiten, meine URL umzuschreiben?
Sie können die Datei web.config in Windows IIS 7 oder höher verwenden.
Beziehen Sie sich auch auf die folgenden Links
http://www.iis.net/download/URLRewrite
http://learn.iis.net/page.aspx/461/creating-rewrite-rules-for-the-url-rewrite-module/
Sie können auch einfach `$_SERVER["PATH_INFO"]` verwenden, um alles nach `/index.php/` zu erhalten.
Danke an alle
Kann mir jemand vorschlagen, was ich tun soll, wenn ich die Benutzernamen als Teil der URL haben möchte?
Zum Beispiel https:///animeshkumar/
anstatt https:///profile.php?userID=1
wobei userID: 1 den Benutzernamen: animeshkumar in der Datenbank hat..
Sie müssten Ihre PHP-Datei dazu bringen, nach dem Benutzernamen statt der ID zu suchen.
https:///animeshkumar/
Wie entferne ich die php-Erweiterung auf dem GoDaddy-Server?
OptionMultiviews On funktioniert bei mir nicht.:(
„Wie entferne ich die php-Erweiterung auf dem GoDaddy-Server?“
Hallo Amit Yadav,
Es spielt keine Rolle, wer der Hosting-Anbieter ist.
Es kommt nur darauf an, ob Ihr Webhoster Apache-Server installiert hat oder nicht.
Der Apache-Server unterstützt die dynamische URL-Rewriting-Technik (ModURL Rewrite).
RewriteEngine on
RewriteRule ^index-([^/]+)-([^/]+).php /search.php?search=$teachers&sort=$ohio [NC]
Die Verwendung des obigen Codes schreibt die Query-String-URL http://yoursite.com/search.php?search=$teachers&sort=$ohio in `http://yoursite.com/index-teachers-ohio.php` um.
Hallo,
Kann mir jemand bei .htaccess helfen?
http://gilltech.in/portfolio/ Öffnen Sie die Portfolioseite in WordPress.
aber http://gilltech.in/portfolio/seowebin-free-seo-tool zeigt 404 (Seite nicht gefunden Fehler), aber ich möchte die gleiche Seite http://gilltech.in/portfolio/ öffnen, wenn diese URL geöffnet wird.
danke
RewriteRule ^([a-zA-Z0-9-/]+)/$ sample.php?pageid=$1
Die jQuery-Datei funktioniert nicht mit der htaccess-Umleitung. Kann mir bitte jemand helfen...
Hallo, wie erstelle ich URLs, die bei Google-Suchergebnissen wie unten angezeigt werden
css-tricks.com › Code Snippets › HTAccess
anstelle von
stackoverflow.com/questions/…/htaccess-seo-friendly-urls-for-all-subf
Die URL sollte wie https:///test/url-2.html aussehen, aber der Inhalt sollte von https:///test/url?p=2 kommen.
Bitte helfen Sie.