1

在 SO 上找不到此问题的答案(对不起,如果重复)

[本地主机]/MySites/.htaccess:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) compiler.php?id=$1

在我的浏览器上请求//localhost/MySites/Example.com/作品。

请求//localhost/MySites/Example.com(无尾随斜杠 ' /')重定向(地址栏实际更改)到//localhost/MySites/Example.com/?id=Example.com尾随/?id=Example.com.

为什么这样做?违背了“漂亮 URL”的目的。

4

1 回答 1

2

您可以使用:

DirectorySlash Off 
DirectoryIndex index.php index.html 
RewriteEngine on 
RewriteBase /MySites/ 

# add a trailing slash for directories 
RewriteCond %{REQUEST_FILENAME} -d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*[^/])$ /$1/ [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) compiler.php?id=$1 [L,QSA]
于 2014-07-23T21:03:42.033 回答