Dave
Dave

Reputation: 5

Contao: Multisite & Multiple Domain Names

I am working with Contao (TypoLight).

We have several sites on the same Contao Installation. Which also means it's the same root folder. Each site has its own entrypoint, atleast its supposed to have.

Now let's assume I have Site A (www.sitea.com) and Site B (www.siteb.com).

Site A needs to be accessible through www.sitea.com

Site B needs to be accessible through www.siteb.com

Now according to the manual each site configuration should have its own domain name entered in the entrypoint. This I have done but now www.siteb.com is redirecting to www.sitea.com.

Does anyone know why this behaviour is happening? Or do I need to wait für any DNS updates? Or do I need to specify any rewrite rules in .htaccess?

Cheers!

Upvotes: 0

Views: 1870

Answers (2)

Henry
Henry

Reputation: 607

for each entry point in your site structure, configure the Domainname without "www":

  • for sitea.com: sitea.com
  • for siteb.com: siteb.com

dns-settings in site struct

create a htaccess (.htaccess file in your webroot) and configure the Host to redirect from www.site[a,b].com to http://site[a,b].com:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

Contao is now able to route properly.

Upvotes: 1

Olivier Pons
Olivier Pons

Reputation: 15816

The answer may not be linked with htaccess or whatever. It probably has to do with vhosts. Here's what you may have done, and if not, this should explain why your configuration doesn't work:

In the httpd.conf file, sometimes you have an include of a vhosts directory.

If not, here's what I do: I setup Apache so that it reads all the vhosts in a specific directory (it's almost at the end of the httpd.conf file, so that the default directives are applied before including vhosts):

# Include Virtualhosts directory:
NameVirtualhost *
Include /web/vhosts/

Then in the dir, I set up all my vhosts:

olivier@Tt /web/vhosts # find . | sort
./labyz.vhost.conf
./olivierpons.vhost.conf
./wipwip.vhost.conf
./wogwog.vhost.conf
olivier@Tt /web/vhosts # 

Then for each vhost I precise their own directives. Example (redirects all to http://disneyland.fr/):

<VirtualHost *>

    ServerAdmin [email protected]
    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>

Note: in your case, the vhost files sitea.com.vhost.conf and siteb.com.vhost.conf have the same DocumentRoot.

Have you done that this way?

Upvotes: 0

Related Questions