Субдомен перенаправлен на основной домен - PullRequest
0 голосов
/ 22 апреля 2020

При создании моего нового vps-сервера, который содержит apache, я добавил домен и поддомен, но я путаюсь с проблемой, что поддомен перенаправляет меня в основной домен, я думаю, что проблема связана с файлом .htaccess:

  • www.example.com
  • www.two.example.com

  • Первый один находится в /var/www/example.com/ содержит wordpress cms.

  • второй находится в /var/www/two.example.com/ содержит только индекс. html.

Конечно Мне добавили новую запись A в брандмауэре веб-приложений

two.example.com A <ip_of_vps>

, и оба сайта включены с помощью a2ensite

$ ls -all /var/apache/sites-enabled
lrwxrwxrwx 1 root root   33 Mar  5 22:41 example.com.conf -> ../sites-available/example.com.conf
lrwxrwxrwx 1 root root   50 Mar 22 01:16 example.com-le-ssl.conf -> /etc/apache2/sites-available/example.com-le-ssl.conf
lrwxrwxrwx 1 root root   37 Apr 20 03:42 two.example.com.conf -> ../sites-available/two.example.com.conf

Когда я пингую два.example.com хорош

И результат apachectl -S

VirtualHost configuration:
*:443                  is a NameVirtualHost 
default server example.com (/etc/apache2/sites-enabled/example.com- le-ssl.conf:2)
         port 443 namevhost example.com (/etc/apache2/sites-enabled/example.com-le-ssl.conf:2)  alias www.example.com

*:80                   is a NameVirtualHost
         default server example.com (/etc/apache2/sites-enabled/example.com.conf:2)
         port 80 namevhost example.com (/etc/apache2/sites-enabled/example.com.conf:2) alias www.example.com
         port 80 namevhost two.example.com (/etc/apache2/sites-enabled/two.example.com.conf:1) alias www.two.example.com

Конфигурация / etc / apache2 / sites-available /

Для www.example.com

<VirtualHost *:80>   
     ServerAlias www.example.com
     ServerAdmin example@gmail.com
     DocumentRoot /var/www/example.com/

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined

     RewriteEngine on
     RewriteCond %{SERVER_NAME} =www.example.com [OR]
     RewriteCond %{SERVER_NAME} =example.com
     RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

Для www.two.example.com

<VirtualHost *:80>

        ServerName two.example.com
        ServerAlias www.two.example.com
        ServerAdmin two.example@gmail.com
        DocumentRoot /var/www/two.example.com/

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
        SecRuleEngine On

</VirtualHost>

и .htaccess www.example.com (wordpress):

# BEGIN WordPress
# Les directives (lignes) entre 'BEGIN WordPress' et 'END WordPress' sont
# généré dynamiquement, et ne doivent uniquement être modifiées via les filtres WordPress.
# Toute modification des directives entre ces marqueurs sera outrepassée.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule ^adm/?$ /wp-login.php [QSA,L]
RewriteRule ^adm/register/?$ /wp-login.php?action=register [QSA,L]
RewriteRule ^adm/lostpassword/?$ /wp-login.php?action=lostpassword [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]
RedirectMatch 404 /\.git.*
</IfModule>

# END WordPress
...