我正在使用Contao(TypoLight)。
我们在同一个Contao安装上有几个站点。 这也意味着它是相同的根文件夹。 每个站点都有自己的入口点,至少它应该有。
现在让我们假设我有Site A(www.sitea.com)和Site B(www.siteb.com)。
网站A需要通过www.sitea.com访问
站点B需要通过www.siteb.com访问
现在根据手册,每个站点配置都应在入口点中输入自己的域名。我已经这样做了,但现在www.siteb.com正在重定向到www.sitea.com。
有谁知道为什么会发生这种情况? 或者我是否需要等待任何DNS更新? 或者我是否需要在.htaccess中指定任何重写规则?
干杯!
答案 0 :(得分:1)
对于您网站结构中的每个入口点,请在不使用" www"
的情况下配置域名在您的webroot中创建一个htaccess(.htaccess文件),并将主机配置为从www.site [a,b] .com重定向到http://site[a,b].com:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
现在可以正确路由。
答案 1 :(得分:0)
答案可能与htaccess或其他任何内容无关。它可能与vhosts有关。 以下是您可能已经完成的操作,如果没有,这可以解释为什么您的配置不起作用:
在httpd.conf文件中,有时您会包含一个vhosts目录。
如果没有,这就是我的工作:我设置Apache以便它读取特定目录中的所有vhost(它几乎位于httpd.conf文件的末尾,因此默认指令在之前应用 / em>包括vhosts):
# Include Virtualhosts directory:
NameVirtualhost *
Include /web/vhosts/
然后在目录中,我设置了所有的vhost:
olivier@Tt /web/vhosts # find . | sort
./labyz.vhost.conf
./olivierpons.vhost.conf
./wipwip.vhost.conf
./wogwog.vhost.conf
olivier@Tt /web/vhosts #
然后对于每个vhost我精确自己的指令。示例(将所有内容重定向到http://disneyland.fr/):
<VirtualHost *>
ServerAdmin webmaster@olivierpons.fr
DocumentRoot "/web/htdocs/olivierpons/prod"
ServerName olivierpons.fr
ServerAlias *.olivierpons.fr
ErrorLog "/web/logs/olivierpons.error.log"
CustomLog "|/opt/httpd/bin/rotatelogs /web/logs/olivierpons.fr/access.%Y-%m-%d-%H_%M_%S.log 5M" combined
RewriteEngine On
RewriteRule (.*) http://disneyland.com$1 [QSA,R=301,L]
</VirtualHost>
注意:在您的情况下,vhost文件sitea.com.vhost.conf
和siteb.com.vhost.conf
具有相同的DocumentRoot
。
你这样做过吗?