Я хотел бы получить доступ к своему сайту как с www, так и без него. В настоящее время работает только с. Если не указывать www, просто перейдем на пустую страницу. Кроме того, wp-admin просто загружает пустую страницу.
Я установил рекорд A для mysite.com и www.mysite.com, оба указывают на мой статический IP Bitnami. У меня также есть поддомен, сопоставленный с другим каталогом, который работает нормально (conference.mysite.com и www.conference.mysite.com).
Я использую стек Bitnami на микро-экземпляре AWS EC2.
Вот мой httpd.conf:
ServerRoot "/opt/bitnami/apache2"
Listen 80
LoadModule authn_file_module modules/mod_authn_file.so
blah blah blah....
LoadModule php5_module modules/libphp5.so
<IfModule !mpm_netware_module>
<IfModule !mpm_winnt_module>
User daemon
Group daemon
</IfModule>
</IfModule>
ServerAdmin you@example.com
ServerName localhost:80
DocumentRoot "/opt/bitnami/apps/wordpress1/htdocs/"
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>
<Directory "/opt/bitnami/apps/wordpress1/htdocs/">
Options Indexes MultiViews +FollowSymLinks
LanguagePriority en
AllowOverride All
Order allow,deny
Allow from all
</Directory>
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
<FilesMatch "^\\.ht">
Order allow,deny
Deny from all
Satisfy All
</FilesMatch>
ErrorLog "logs/error_log"
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \\"%r\\" %>s %b \\"%{Referer}i\\" \\"%{User-Agent}i\\"" combined
LogFormat "%h %l %u %t \\"%r\\" %>s %b" common
<IfModule logio_module>
LogFormat "%h %l %u %t \\"%r\\" %>s %b \\"%{Referer}i\\" \\"%{User-Agent}i\\" %I %O" combinedio
</IfModule>
CustomLog "logs/access_log" common
</IfModule>
<IfModule alias_module>
ScriptAlias /cgi-bin/ "/opt/bitnami/apache2/cgi-bin/"
</IfModule>
<Directory "/opt/bitnami/apache2/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
DefaultType text/plain
<IfModule mime_module>
TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
</IfModule>
Include conf/extra/httpd-mpm.conf
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
AddType application/x-httpd-php .php .phtml
LoadModule wsgi_module modules/mod_wsgi.so
WSGIPythonHome /opt/bitnami/python
ServerSignature Off
ServerTokens Prod
AddType application/x-httpd-php .php
PHPIniDir "/opt/bitnami/php/etc"
Include "/opt/bitnami/apps/phpmyadmin/conf/phpmyadmin.conf"
ExtendedStatus On
<Location /server-status>
SetHandler server-status
Order Deny,Allow
Deny from all
Allow from localhost
</Location>
Include "/opt/bitnami/apache2/conf/bitnami/httpd.conf"
Include "/opt/bitnami/apps/virtualhost.conf"
Вот мой файл виртуальных хостов:
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin xx
DocumentRoot "/opt/bitnami/apps/wordpress1/htdocs"
ServerName mbird.com
ServerAlias www.mbird.com
ErrorLog "logs/wordpress-error_log"
CustomLog "logs/wordpress-access_log" common
</VirtualHost>
<Directory "/opt/bitnami/apps/wordpress1/htdocs">
Options Indexes MultiViews +FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
### WordPress conference.mbird.com configuration ###
<VirtualHost *:80>
ServerAdmin sysadmin@mbird.com
DocumentRoot "/opt/bitnami/apps/wordpress/htdocs"
ServerName conference.mbird.com
ServerAlias www.conference.mbird.com
ErrorLog "logs/confwordpress-error_log"
CustomLog "logs/confwordpress-access_log" common
</VirtualHost>
<Directory "/opt/bitnami/apps/wordpress/htdocs">
Options Indexes MultiViews +FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
###
WP не очень хорошо работает с несколькими доменами, поскольку все его ссылки на страницы, вложения и прочее хранятся в его базе данных и файлах, а не в переменных. Определите адрес веб-сайта (с или без части www) и сделайте правильное постоянное перенаправление на своем веб-сервере, указывающее на правильный адрес.
Насколько я понимаю, вы хотите, чтобы 2 рабочих сайта, www и без www. Это не очень хорошая ситуация. Вероятно, вам нужно принять формальное решение: какой из www или не www вам предпочтительнее? (Google Analytics и другие будут действительно любить / нуждаться в этом)
Затем сделайте постоянное перенаправление всех URL-адресов от нежелательных до предпочтительных. Это будет «301 редирект», как предлагает Вадим.
Эти перенаправления будут установлены в ваш vhost.conf
Возможно, вам стоит посмотреть конфигурацию wordpress относительно обслуживаемых доменов сайта ('MULTISITE') или настроить явное перенаправление apache с домена на www.domain.