【发布时间】:2011-12-05 20:46:53
【问题描述】:
我很抱歉这个标题令人困惑;却想不出办法。而且我需要知道 .htaccess 在多级文件三个系统级别的主要级别如何影响以下级别的 .htaccess 文件的行为;以及其他级别的 .htaccess 文件如何影响非主域中的行为。
我正在通过一个共享托管帐户托管多个网站。
假设cpanel文件三系统结构。
从 public_html 我有主域,这个目录包含一个 .htaccess 文件。然后,在三个文件结构中,我有其他域,我将其称为二级域,每个域都有自己的 .htaccess
如果辅助域没有 .htacess,则来自主域的 .htaccess 会影响文件三个结构中的域 url 的行为。
我想确保所有 www.domain.com 都转到 domain.com(至少来自我当前的服务提供商;因为,我和另一个服务提供商在一起,但情况并非如此。任何级别的 .htaccess 都不会影响其他人)
我想将 www.domain.com 重定向到 domain.com
一级.htaccess通过以下代码实现了我对一级域的目标:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.primarydomain.com [NC]
RewriteRule ^(.*)$ http://primarydomain.com/$1 [L,R=301]
我对辅助域尝试使用代码实现相同的尝试和错误
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.secondarydomain.com [NC]
RewriteRule ^(.*)$ http://secondarydomain.com/$1 [L,R=301]
在主域级别内的 .htaccess 和文件三系统的第二级中,我无法获得所需的结果
为了更好的说明,我添加了一个三文件系统:
cpanel_account
public_html
.htaccess
index.php
index.html
secondarydomain.com
.htacess
index.php
index.html
如何将 www.secondarydomain.com 调用从 .htaccess 重定向到辅助域级别的文件三结构是主域级别还是辅助域级别?
谢谢,
[更新]
嗯,很好,我发布了 b/c 问题,因为我做了更多的研究发现:
当我查看其中一个共享托管帐户的 .htaccess 时,我发现以下针对第一级 public_html 修改的 .htacess 代码
# -FrontPage-
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 PrimaryDomain.com
AuthUserFile /home/USER/public_html/_vti_pvt/service.pwd
AuthGroupFile /home/USER/public_html/_vti_pvt/service.grp
<files *.js.gz>
AddType "text/javascript" .gz
AddEncoding gzip .gz
</files>
<files *.css.gz>
AddType "text/css" .gz
AddEncoding gzip .gz
</files>
RewriteEngine on
#Check to see if browser can accept gzip files.
ReWriteCond %{HTTP:accept-encoding} gzip
RewriteCond %{HTTP_USER_AGENT} !Safari
#make sure there's no trailing .gz on the url
ReWriteCond %{REQUEST_FILENAME} !^.+\.gz$
#check to see if a .gz version of the file exists.
RewriteCond %{REQUEST_FILENAME}.gz -f
#All conditions met so add .gz to URL filename (invisibly)
RewriteRule ^(.+) $1.gz [QSA,L]
以及我是否添加此代码到二级域级别(即 public_html/secondarydomain.com/.htacess)
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.secondarydomain.com [NC]
RewriteRule ^(.*)$ http://secondarydomain.com/$1 [L,R=301]
(重复我是否添加此代码)
域,所有域请求(即 www.anyofmydomainshostedhere.com)都被重定向到非 www anyofmydomainshostedhere.com
:?
【问题讨论】:
标签: .htaccess