2016-11-26 140 views
0

在我的public_html中,我有2个文件夹,wordpress和票据。我目前有/wordpress目录通过mod_rewrite工作,以便URL的外观很好看。我想设置一个OSTicket的实例,并且在导航到example.com/tickets以开始配置时,我碰到了一个Wordpress 404 error使用.htaccess忽略子文件夹

我的根.htaccess看起来是这样的:

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

我也有门票文件夹.htaccess,有;

RewriteEngine off 

如果任何人有一些见解或许是我应该考虑它会很感激,三江源所有亲切。

+0

注释掉'RewriteCond%{REQUEST_URI}!^/tickets /.*'行。 – anubhava

+0

这样做现在给我一个HTTP 500的错误,运行股票/tickets/setup/install.php会给出这个错误,但是如果我在setup dir中创建了一个test.php,它实际上会显示页面的内容,这很奇怪。感谢您的帮助anubhava –

+1

您将需要检查Apache error.log,看看为什么500会出现。 – anubhava

回答

0
  1. 您的状况与您的匹配情况相反。他们不能都是对的。永久删除的条件下,并修改规则如下:

    RewriteRule ^tickets(?:$|/) - [L] 
    

    这确保/tickets-foo/还是到WordPress的和你不匹配时,你的文件系统是区分大小写不区分大小写。

  2. 暂时重命名门票目录。创建另一个只有一个索引文件,内容是无关的,但把东西英寸访问example.com/tickets,你应该看到你的前述内容。

我打赌这个问题不在.htaccess也不是WordPress。

+0

感谢Walf;我已经添加了你的建议,并且我能够查看新创建的索引文件,我认为更多的事情正在进行,所以我将深入Apache日志并找出它,谢谢! –

+0

如果在获得500时浏览器中的URL发生更改,那么调试器的网络面板也可能会有所帮助。如果存在任何重写,请确保您在该子目录的“.htaccess”中使用'RewriteBase/tickets /'。 – Walf