Когда я печатаю

cat /etc/apache2/sites-enabled/*

я вижу

<VirtualHost *:80>
        ServerName myserver
        DocumentRoot /var/www/
</VirtualHost>
<VirtualHost *:80>
        ServerName www.mydomain1.net
        DocumentRoot /var/www/www.mydomain1.net/public/
</VirtualHost>

<VirtualHost *:80>
    ServerName mydomain1.net
    RedirectMatch permanent ^/(.*) http://www.mydomain1.net/$1
</VirtualHost>
<VirtualHost *:80>
        ServerName www.yasser.com
        DocumentRoot /var/www/www.mydomain2.com/public/
</VirtualHost>

<VirtualHost *:80>
    ServerName mydomain2.com
    RedirectMatch permanent ^/(.*) http://www.mydomain2.com/$1
</VirtualHost>

Когда я просматриваю mydomain1.com и mydomain2.com, я вижу содержимое "myserver", который представляет собой список каталогов в /var/www .

Что я здесь не так делаю?

Также вот вывод apachectl -S:

*:80                   is a NameVirtualHost
     default server myserver (/etc/apache2/sites-enabled/myserver:1)
     port 80 namevhost myserver (/etc/apache2/sites-enabled/myserver:1)
     port 80 namevhost www.mydomain1.net (/etc/apache2/sites-enabled/www.mydomain1.net:1)
     port 80 namevhost mydomain1.net (/etc/apache2/sites-enabled/www.mydomain1.net:6)
     port 80 namevhost www.mydomain2.com (/etc/apache2/sites-enabled/www.mydomain2.com:1)
     port 80 namevhost mydomain2.com (/etc/apache2/sites-enabled/www.mydomain2.com:6)

1 ответ1

1

Прежде всего, пожалуйста, используйте

Redirect permanent / http://www.example.org/

При перенаправлении всего.

Также убедитесь, что все ваши имена и имена ServerName и ServerAlias разрешены правильно как на сервере, так и на клиенте.

Не могли бы вы также опубликовать вывод

curl -Lv http://example.com/

здесь, так что мы можем видеть, что происходит, точно?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .