0

很抱歉,我不确定如何用一句话来表达这个问题。

基本上,mod rewrite 适用于我们的 traq 页面(下面的代码块 1),但不适用于我们的 wordpress 页面(下面的代码块 2)。出于某种原因,如果我们实现自动生成的 Wordpress .htaccess 文件,页面会出现 Apache 的“找不到页面”错误(这意味着它根本不会访问 Wordpress 的索引页面)。

特拉克:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

WordPress:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
<IfModule>

我们尝试注释掉 Wordpress 文件中的几行,并在我们认为可能导致问题的一件事或另一件事时更改各行。最后,除了 404 之外,我们的任何更改都没有显示任何内容。

4

1 回答 1

0

我们发现了问题。我们的服务器设置与发行版的 Ubuntu 非常相似,默认情况下,apache 包配置为允许使用 htaccess / mod-rewrite 覆盖,但不允许任何重写规则。我们必须将我们想要允许的规则添加到 apache 配置中。

于 2012-06-08T03:31:28.153 回答