2016-08-24 7 views
1

Ich möchte diese Art von Struktur in .htaccess haben. Ist es möglich?So erstellen Sie mehrere Rewrite-Regeln in .htaccess

<IfModule mod_rewrite.c> 
 
    RewriteEngine On 
 
    RewriteBase/
 

 
    RewriteCond %(REQUEST_FILENAME) !-f 
 
    RewriteCond %(REQUEST_FILENAME) !-d 
 
    RewriteRule ^signup$ /signup.html [L] 
 

 
    RewriteCond %(REQUEST_FILENAME) !-f 
 
    RewriteCond %(REQUEST_FILENAME) !-d 
 
    RewriteRule ^signin$ /signin.html [L] 
 

 
    RewriteCond %(REQUEST_FILENAME) !-f 
 
    RewriteCond %(REQUEST_FILENAME) !-d 
 
    RewriteRule ^home$ /landing.html [L] 
 

 
    RewriteCond %{REQUEST_FILENAME} -f [OR] 
 
    RewriteCond %{REQUEST_FILENAME} -d 
 
    RewriteRule^- [L] 
 

 
    RewriteRule^index.html [L] 
 
</IfModule>
Für Landung, signin, Anmeldungen ich ich einzelne Seiten und für alle anderen Anfragen müssen anfordern möchten index.html-Seite anzufordern. Kann ich das mit .htaccess tun?

+0

Anders als einige zusätzliche Bedingungen Ihre Regeln gut aussehen. Irgendein bestimmtes Problem, das du erhältst? – anubhava

+0

Ich konnte nur auf Routen zugreifen, die in .htaccess (/ signup,/signin,/home) und allen anderen Routen definiert sind. Es wird Interner Serverfehler angezeigt – anilCSE

Antwort

2

haben es wie folgt aus:

DirectoryIndex index.html 
RewriteEngine On 
RewriteBase/

RewriteCond %{REQUEST_URI} /index\.html$ [NC,OR] 
RewriteCond %{REQUEST_FILENAME} -f [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule^- [L] 

RewriteRule ^(signup|signin)/?$ $1.html [L,NC] 

RewriteRule ^home/?$ landing.html [L,NC] 

RewriteRule . index.html [L] 
Verwandte Themen