2012-12-10 72 views
1

我开发这是一个Apache服务器托管与PHP 5重写规则上的.htaccess导致404

有一个网站上的域名已经在运行的应用程序:www.domain.com。我的应用程序位于名为“hotsite”的文件夹中,可以通过www.domain.com/hotsite/网址访问它。

根文件夹包含含有htaccess的:

/.htaccess:

XBitHack  Off 
RewriteEngine On 
RewriteCond %{REQUEST_URI} \/([0-9a-z]{6})$ [NC] 
RewriteRule ^(.*) http://www.domain.com/url/forward.php?%1 [L] 
IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti* 
<Limit GET POST> 
order deny,allow 
deny from all 
allow from all 
</Limit> 
<Limit PUT DELETE> 
order deny,allow 
deny from all 
</Limit> 
AuthName www.domain.com 
AuthUserFile /home/intera/public_html/_vti_pvt/service.pwd 
AuthGroupFile /home/intera/public_html/_vti_pvt/service.grp 
RedirectMatch permanent ^/webmail$ http://http://mail.google.com/hosted/domain.com www.domain.com/hotsite/ 

在该 'hotsite' 文件夹中,有包含以下代码.htaccess文件:

/hotsite/.htaccess:

RewriteEngine on 
RewriteBase/
RewriteCond %{SCRIPT_FILENAME} !-f 
RewriteCond %{SCRIPT_FILENAME} !-d 
RewriteRule ^(.*)$ /folder/index.php 

现在,当我访问www.domain.com/ho tsite /,我的应用程序加载正常。但是当我尝试访问www.domain.com/hotsite/section/时,它似乎忽略.htaccess文件并尝试访问“部分”,就好像它是一个文件夹,返回404错误。

任何ideias为什么发生这种情况,我应该怎样做才能让工作?

感谢=)

+1

将som垃圾文本放在.htaccess之上,看看它是否会为您生成500错误。 – anubhava

回答

1

如果htaccess的是hotsite文件夹内,然后RewriteBase /需要是RewriteBase /hotsite

以防万一;请注意,重写代码重写为/folder/index.php,而不是/hotsite/folder/index.php

+0

你说得对。 谢谢Gerben。 =) – Vinas

+0

4½年后? ( - :但是,不客气。 – Gerben