相对路径不添加重写规则追加斜线后工作(relative path doesn't work

2019-10-23 05:57发布

我有放置在一个索引页/forum/section1/. 我有一个规则,当我浏览到自动重定向到索引页面exampledomain.com/forum/section1/ 。 有时,当我忘记了斜线,它使负载和永不熄灭的索引页。 我已经加入了一条附加一个斜线到每一个请求:

RewriteEngine on
#From http://enarion.net/web/htaccess/trailing-slash/ 
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
# Don't apply to images/css/js/ajax files
RewriteCond %{REQUEST_URI} !^.*\.(jpg|jpe?g|ico|css|js|gif|png|php)$ [NC]
RewriteRule ^(.*)$ http://exampledomain.com/$1/ [L,R=301] 

RewriteCond %{REQUEST_FILENAME} -d 
RewriteCond %{REQUEST_FILENAME} -f 
RewriteCond %{REQUEST_FILENAME} -l
RewriteRule ^ - [L]
RewriteCond %{REQUEST_URI} !^.*\.(jpg|jpe?g|ico|css|js|gif|png)$ [NC]

#Remove php extension
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule !.*\.php$ %{REQUEST_FILENAME}.php [QSA,L]

RewriteCond %{THE_REQUEST} /index\.php [NC]
RewriteRule ^([^\.]+)$ $1.php [NC,L]

这些规则工作,但所有的相对路径变得无效。 例如,我有索引页面上的表单:

       `<form action='index' method='POST'></form>`

而不是访问的exampledomain/forum/section1/index/ ,它会重定向到exampledomain/forum/section1/index/index 。 我知道改变为绝对路径相对路径会解决这个问题,但有一种方式来解决与重写规则?

文章来源: relative path doesn't work after adding a rewrite rule for appending trailing slash