2016-05-07 12 views
1

Ich migriere meine Website von Wordpress zu Jekyll und ich möchte die URLs arbeiten lassen. Meine Idee war, dafür eine .htaccess-Datei zu verwenden und sie im Stammverzeichnis der Site zu platzieren. Aber leider nach mehreren Lernprogrammen versucht und es scheint nicht zu funktionieren.Rewrite site/index.php/... zu site.com/... mit mod_rewrite und .htaccess

Die alten URLs haben das folgende Format

http://example.com/index.php/2016/05/07/title-of-the-blog-post/ 

Die neuen URLs haben das folgende Format:

http://example.com/2016/05/07/title-of-the-blog-post.html 

unter anderem ich dieses Beispiel versucht habe, die mir gut aussieht, aber es tatsächlich casues eine Fehlermeldung alle Seiten auf meiner Website angezeigt werden :)

Options +FollowSymLinks 
RewriteEngine On 
RewriteRule ^index.php.*$ http://example.com/ [R=301,L] 

Ich denke, dass sollten alle Urls nehmen, die mit example.com/index.php beginnen und sie mit example.com/ beginnen, aber anscheinend das ist nicht der Fall

Antwort

1

Um

zu

können Sie die folgende Regel verwenden:

RewriteEngine on 


RewriteRule ^index\.php/(.+)$ http://example.com/$1.html [NE,L,R] 

oder Alternativ können Sie mod-alias

RedirectMatch 301 ^/index\.php/(.+)$ http://example.com/$1.html 
+1

Dass man war ganz in der Nähe nutzen! Ich musste einen zusätzlichen Schrägstrich hinzufügen, damit es funktioniert. Es scheint so einfach, nachdem ich dein Beispiel gesehen habe :). 'RewriteRule^index \ .php /(.+)/$ http://example.com/$1.html [NE, L, R]' –