我之前从未遇到过这个问题,在新的工作机器上安装并遇到一些奇怪的问题。首先,我应该指出它工作正常,并且在进行一些看似无关的编辑后,没有index.php的路由成为一个问题。 我启用了:
LoadModule rewrite_module libexec/apache2/mod_rewrite.so
我的htaccess:
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
我尝试了一堆基于堆栈溢出gthreads的组合。这一小时似乎太长了,我无法弄清楚发生了什么。
答案 0 :(得分:0)
第1步是确保Apache的重写确实有效。尝试在名为bar.php
#File: bar.php
<p>Hello Bar</p>
然后在.htaccess
文件中创建以下内容。
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule foo.php bar.php [L]
</IfModule>
然后尝试在服务器上加载URI foo.php
http://mysite.example.com/foo.php
如果您的网络服务器正确重定向到bar.php
,那么您就能正确了解Apache的设置。如果没有,则表示重写未开启。一旦你知道重写是打开还是关闭,你就会知道在哪里集中调试。