1

对不起,如果这个问题已经在这里问过了。但我还没有找到解决方案。

我有以下 .htaccess

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)$ index.php?page=$1 [L] 

我想从domain.com/index.php?page=contact -To- domain.com/contact重写 URL

是的,它运作良好。但问题是当我添加一个正斜杠 /就像这个domain.com/contact/

它改为显示未找到页面。我认为浏览器将 contact/识别为目录而不是文件。

我真的希望访问者可以通过这两种方式访问​​该页面,最后使用正斜杠 / 没有它。如何使这项工作?

4

1 回答 1

2

在您的正则表达式中使尾部斜杠可选^([^/]+)/?$

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ index.php?page=$1 [L,QSA] 
于 2013-10-15T10:46:13.197 回答