【发布时间】:2016-04-22 12:24:20
【问题描述】:
mod_rewrite 上有相当多的内容可用,但我根本无法让以下内容正常工作。
现在我的 htaccess 文件中有以下代码:
RewriteEngine On
Options -Indexes
Options -Multiviews
ErrorDocument 400 http://localhost/mywebsite/400.php
ErrorDocument 403 http://localhost/mywebsite/403.php
ErrorDocument 404 http://localhost/mywebsite/404.php
ErrorDocument 500 http://localhost/mywebsite/500.php
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule (.*) $1.php [L]
这将成功地使 mywebsite/index 之类的东西工作(而不是 mywebsite/index.php)。 但是,在某些情况下,我的访问者将使用尾部斜杠(mywebsite/index/)访问该站点,然后我的重写不再起作用。我收到一个错误页面。
那么我将如何使它工作,以便任何带有斜杠、没有斜杠或扩展名 (.php) 的页面都可以在我的网站上工作?
我会补充一点,这是在 apache 服务器 (XAMPP) 上的 localhost 上,以防这会影响 mod_rewrite 的工作方式。
【问题讨论】:
标签: apache .htaccess mod-rewrite