我启用了 mod_rewrite,重新启动了所有服务,仍然没有生效。这是我在 .htaccess 中的内容:
重写引擎开启
RewriteRule .* localhost/phpinfo.php
请指教。
我启用了 mod_rewrite,重新启动了所有服务,仍然没有生效。这是我在 .htaccess 中的内容:
重写引擎开启
RewriteRule .* localhost/phpinfo.php
请指教。
首先,重写规则通常不会影响 URL 的主机部分(除非您指定预定义REQUEST_URI
的名称等)只是路径部分(一篇很好的文章解释了 URL 重写的位和字节。)也就是说您的规则应该在至少看起来像这样。
RewriteEngine On
RewriteRule (.+) /phpinfo.php [L]
此外,您AllowOverride
对特定虚拟主机(或文件夹)的指令是否配置为完全允许.htaccess
文件?如果不是,.htaccess
文件将被完全忽略。为了使 mod_rewrite 工作,它至少需要设置为FileInfo Options
.
AllowOverride FileInfo Options