Я пытался понять это самостоятельно, но это просто грязно.Я использовал "sudo a2ensite" и перезапускал apache2 так много раз за последние дни, что я давно потерял счет.И хуже всего то, что это становится все более запутанным.
Итак, что я хочу сделать, это просто теоретически:
У меня есть один сайт WP, который должен быть многоязычным, и у меня есть четыре домена с сертификатами SSL.
siteurl.se
siteurl.dk
siteurl.no
siteurl.fi
С самого начала я планировал использовать WPML «разные домены для каждого языка», но это просто беспорядок.Все, что я получаю, это сообщение об ошибке «Неправильно», и я думаю, что это потому, что я настроил свой виртуальный хост плохим / странным способом.
Я пытался модифицировать файл виртуального хоста многими способами, но, поскольку я действительно не знаю, насколько распространенной является практика в этих ситуациях, я действительно борюсь.
Это текущее состояние моего файла виртуального хоста в apache2.
Нужно ли настраивать отдельные записи для каждого домена / сертификата, как это, или есть более простой способ?(Я хочу, чтобы весь трафик перенаправлялся на https не-www.)
<VirtualHost *:80>
ServerName siteurl.se
Redirect Permanent / https://siteurl.se/
</VirtualHost>
<VirtualHost *:80>
ServerName siteurl.fi
Redirect Permanent / https://siteurl.fi/
</VirtualHost>
<VirtualHost *:80>
ServerName siteurl.no
Redirect Permanent / https://siteurl.no/
</VirtualHost>
<VirtualHost *:80>
ServerName siteurl.dk
Redirect Permanent / https://siteurl.dk/
</VirtualHost>
<VirtualHost *:443>
ServerName siteurl.se
DocumentRoot /var/www/html/sitedirectory
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /home/user/ssl/siteurl.se.pem
SSLCertificateKeyFile /home/user/ssl/siteurl.se.key
SSLCACertificateFile /home/user/ssl/intermediate.pem
</VirtualHost>
<VirtualHost *:443>
ServerName siteurl.fi
DocumentRoot /var/www/html/sitedirectory
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /home/user/ssl/siteurl.fi.pem
SSLCertificateKeyFile /home/user/ssl/siteurl.fi.key
SSLCACertificateFile /home/user/ssl/intermediate.pem
</VirtualHost>
<VirtualHost *:443>
ServerName siteurl.no
DocumentRoot /var/www/html/sitedirectory
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /home/user/ssl/siteurl.no.pem
SSLCertificateKeyFile /home/user/ssl/siteurl.no.key
SSLCACertificateFile /home/user/ssl/intermediate.pem
</VirtualHost>
<VirtualHost *:443>
ServerName siteurl.dk
DocumentRoot /var/www/html/sitedirectory
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /home/user/ssl/siteurl.dk.pem
SSLCertificateKeyFile /home/user/ssl/siteurl.dk.key
SSLCACertificateFile /home/user/ssl/intermediate.pem
</VirtualHost>
<Directory />
Options FollowSymLinks
AllowOverride none
</Directory>
<Directory /var/www/html/sitedirectory >
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
Я получил это предупреждение, сказав следующее:
"Warning: Tin Canny requires that your WordPress Address and Site Address protocol (http/https) match the protocol in your address bar. Your current settings may cause issues"
Я также получаю некоторые странные предупреждения в WPML:следующее:
When WPML accesses https://siteurl.se/da____icl_validate_directory=1 it gets: cURL error 7: Failed to connect to siteurl.se port 443: Connection refused
The expected value is:
<!--https://siteurl.se-->
Если бы кто-нибудь мог указать мне правильное направление, когда дело доходит до файла виртуального хоста, я был бы очень рад!