.htaccess 是否可以使用单独的域别名&;重定向取决于子目录?
我需要根据域名是否在子目录中设置域名的别名/重定向.htaccess 是否可以使用单独的域别名&;重定向取决于子目录?,.htaccess,redirect,dns,domain-aliasing,.htaccess,Redirect,Dns,Domain Aliasing,我需要根据域名是否在子目录中设置域名的别名/重定向 newdomain.com是parent.com/newdomain的别名。这在主机控制面板中设置为别名,并且正在工作 我需要url根据文件的不同而不同,例如 newdomain.com中的文件应在位置栏中显示为 parent.com/newdomain/filename.php 位置栏中应显示newdomain.com中的子目录 作为newdomain.com/subdir/filename.php 我可以使用htaccess来控制重定向
newdomain.com
是parent.com/newdomain
的别名。这在主机控制面板中设置为别名,并且正在工作
我需要url根据文件的不同而不同,例如
中的文件应在位置栏中显示为newdomain.com
parent.com/newdomain/filename.php
- 位置栏中应显示
中的子目录 作为newdomain.com
newdomain.com/subdir/filename.php
这可能吗?谢谢我的回答基于这样一个假设,即
newdomain.com
和parent.com
是从同一个Apache进程提供服务的
将此代码放入newdomain.com的文档根目录下的.htaccess
:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^(www\.)?newdomain\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/+subdir/ [NC]
RewriteRule ^ http://parent.com/newdomain%{REQUEST_URI} [L,R=302,NC]
一旦您确认它工作正常,请将R=302
更改为R=301
谢谢@anubhava的回复。目前,newdomain.com只是一个别名,没有为其设置主机。设置主机是我在位置栏中使用不同别名的唯一方法吗?我相信您不需要为newdomain.com
设置主机。只需启用mod_rewrite
,.htaccess
,并将上述代码放入parent.com
的$DOCUMENT\u ROOT
目录中。当你上面说“将.htaccess放入newdomain.com的根目录”时,我以为你的意思是我需要托管-我想你是说parent.com?我以前在parent.com上尝试过htaccess,但它不起作用,但我会试试你的。谢谢