实际上我有一个域(example.com)
,它托管在godaddy托管帐户中,最近我又购买了另一个域(example2.com)
这两个域我托管在同一个托管帐户中。
现在让我告诉你这两个领域的路径:
example.com in on the / folder
example2.com in on the /example2 folder
我已经使用example.com
域创建了3个子域,并且托管帐户在/目录上为相同的子域创建了文件夹。
我们说demo.example.com
,文件夹为/demo
现在来到第二个域,最近我为example2.com
test.example2.com
位于根目录,文件夹/test
不像/example2/test
,因为我的第二个域位于/example2
文件夹
现在的问题是,当我为test.example2.com
启用.htaccess文件时,我得到了
500 Internal Server Error
AddDefaultCharset UTF-8
ErrorDocument 404 /404error.php
Options +FollowSymlinks -MultiViews
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule (.*)([^/])$ http://%{HTTP_HOST}/$1$2/ [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*index\.php\ HTTP/
RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{HTTP_HOST} !^localhost
RewriteRule .* http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteRule ^(all)/([^/]+)/?$ story.php?title=$2 [L]
RewriteRule ^(all)/?$ index.php [R=301,L]
这里是.htaccess
文件的一小部分但没有htaccess它工作正常,我认为我对RewriteBase
我也试过像RewriteBase /test/
和RewriteBase /example2/test/
但没有帮助,任何人都可以告诉我问题在哪里,我该如何调试这个问题?
但我的其他子域的其余部分工作正常。
更新错误日志
[Tue Oct 16 21:47:04 2012] [alert] [client 110.172.129.110] /var/chroot/home/content/06/8871106/html/bestsocialbookmark/.htaccess: Option All not allowed here
[Tue Oct 16 21:47:07 2012] [alert] [client 110.172.129.110] /var/chroot/home/content/06/8871106/html/bestsocialbookmark/.htaccess: Option All not allowed here
是真的,我不知道它是什么意思。
答案 0 :(得分:1)
/var/chroot/home/content/06/8871106/html/bestsocialbookmark/.htaccess:此处不允许选项
这可能是造成错误的原因。而不是你的规则(看起来很好,它们在空白的htaccess文件中对我有用)。
所以在/var/chroot/home/content/06/8871106/html/bestsocialbookmark/
目录的htaccess文件中,某处有一个Option All
。您可能意味着Options All
,因为Option
不是核心指令(它可以在另一个第三方模块中使用,但显然不允许)。只需删除它。