请帮我修改.htaccess中的重定向。我需要重定向到带有斜杠的网址
www.example.cz/about - > www.example.cz/about/
www.example.cz/index.php?path=about - > www.example.cz/about /
和最后一个 www.example.cz/index.php - > www.example.cz
#MY .htaccess
<FilesMatch "\.phtml$">
Order Deny,Allow
Deny From All
</FilesMatch>
ErrorDocument 404 /404/
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^example.cz$
RewriteRule (.*) http://www.example.cz/$1 [R=301,QSA,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?path=$1 [L,QSA]
答案 0 :(得分:0)
我解决了尾随斜杠和index.php重复的问题:
<FilesMatch "\.phtml$">
Order Deny,Allow
Deny From All
</FilesMatch>
ErrorDocument 404 /404/
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^example\.cz$
RewriteRule (.*) http://www.example.cz/$1 [R=301,L]
RewriteRule ^index.php$ http://example.cz/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /?path=$1 [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1/ [L,R=301]
现在.htaccess正在做
www.example.cz/index.php --> www.example.cz/
www.example.cz/about--> www.example.cz/about/
example.cz --> www.example.cz
接下来,我需要解决
www.example.cz/?path=about--> www.example.cz/about/
www.example.cz/about/ --> wwww.example.cz