我有一个cPanel托管帐户,我的主域名指向public_html
。但是,为了更好地制作目录结构,我将以下代码添加到public_html/.htaccess
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/www\.MyDomain\.com [NC]
RewriteRule ^(.*)$ /MyDomain.www/$1 [NC,L]
它只是将我的主域名的所有请求从/public_html
重定向到/public_html/MyDomain.www
。
但问题是,当我访问http://www.MyDomain.com/
时,它会在public_html/MyDomain.www/index.php
发送页面,但会使用403 HTTP代码而不是200代码。请注意,访问http://www.MyDomain.com/index.php
会使用200个HTTP代码正确返回页面。
那么,如何修复403错误代码?
答案 0 :(得分:0)
我尝试用.htaccess替换现有的重写规则,并且令人惊讶的是它有效。
RewriteCond %{HTTP_HOST} ^domain.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www.domain.com$
RewriteCond %{REQUEST_URI} !domain.www/
RewriteRule (.*) /domain.www/$1 [L]