Запуск Apache на CentOS, попытка настроить поддомены с подстановочными знаками, в основном я хочу, чтобы .mydomain.com указывал на mydomain.com
С помощью cPanel я добавил * .mydomain.com. С помощью WHM я убедился, что запись A указывает на правильный IP-адрес.
Я установил свой рекорд А:
* 14400 IN X.x.x.x
Мой httpd.conf:
ServerName _wildcard_.mydomain.com
ServerAlias *.mydomain.com
DocumentRoot /home/mydomain/public_html
ServerAdmin webmaster@mydomain.com
UseCanonicalName Off
## User userdomain# Needed for Cpanel::ApacheConf
UserDir enabled userdomain
<IfModule mod_suphp.c>
suPHP_UserGroup userdomain userdomain
</IfModule>
<IfModule !mod_disable_suexec.c>
<IfModule !mod_ruid2.c>
SuexecUserGroup usergrdomain userdomain
</IfModule>
</IfModule>
<IfModule mod_ruid2.c>
RUidGid userdomain userdomain
</IfModule>
ScriptAlias /cgi-bin/ /home/mydomain/public_html/cgi-bin/
# To customize this VirtualHost use an include file at the following location
# Include "/usr/local/apache/conf/userdata/std/2/mydomain/wildcard_safe.mydomain.com/*.conf"
У меня VirtualHost в httpd.conf настроен так, чтобы указывать на корень домена. Перезапустил Apache, server, dns, по-прежнему ничего.
Я провел часы, исследуя это, следовал инструкциям, все настраивал правильно.
Что мне не хватает?
Директива ServerAlias действительна только в контексте VirtualHost.
Видеть: http://httpd.apache.org/docs/2.2/mod/core.html#serveralias
Ваша конфигурация должна быть:
<VirtualHost *:80>
ServerName _wildcard_.mydomain.com
ServerAlias *.mydomain.com
DocumentRoot /home/mydomain/public_html
ServerAdmin webmaster@mydomain.com
UseCanonicalName Off
## User userdomain# Needed for Cpanel::ApacheConf
UserDir enabled userdomain
<IfModule mod_suphp.c>
suPHP_UserGroup userdomain userdomain
</IfModule>
<IfModule !mod_disable_suexec.c>
<IfModule !mod_ruid2.c>
SuexecUserGroup usergrdomain userdomain
</IfModule>
</IfModule>
<IfModule mod_ruid2.c>
RUidGid userdomain userdomain
</IfModule>
ScriptAlias /cgi-bin/ /home/mydomain/public_html/cgi-bin/
</VirtualHost>