У меня есть домен, настроенный на моем сервере, чтобы перенаправлять все запросы на HTTPS-версию моего сайта, которая работает нормально. Несколько дней назад я добавил поддомен, который теперь также перенаправляется на основной домен. Вот файлы конфигурации для apache.
httpd.conf (генерируется системой, не редактируется мной)
<VirtualHost my.ip:80>
ServerName bwdmedia.net
ServerAlias bestwebsitedesigners.in bestwebsitedesigners.net bwdmedia.co bwdmedia.org www.bestwebsitedesigners.in www.bestwebsitedesigners.net www.bwdmedia.co www.$
DocumentRoot /home/bwdmedia/public_html
ServerAdmin webmaster@bwdmedia.net
UseCanonicalName Off
CustomLog /usr/local/apache/domlogs/bwdmedia.net combined
CustomLog /usr/local/apache/domlogs/bwdmedia.net-bytes_log "%{%s}t %I .\n%{%s}t %O ."
## User bwdmedia # Needed for Cpanel::ApacheConf
UserDir enabled bwdmedia
<IfModule mod_suphp.c>
suPHP_UserGroup bwdmedia bwdmedia
</IfModule>
<IfModule !mod_disable_suexec.c>
<IfModule !mod_ruid2.c>
SuexecUserGroup bwdmedia bwdmedia
</IfModule>
</IfModule>
<IfModule mod_ruid2.c>
RMode config
RUidGid bwdmedia bwdmedia
</IfModule>
<IfModule itk.c>
# For more information on MPM ITK, please read:
# http://mpm-itk.sesse.net/
AssignUserID bwdmedia bwdmedia
</IfModule>
ScriptAlias /cgi-bin/ /home/bwdmedia/public_html/cgi-bin/
Include "/usr/local/apache/conf/userdata/std/2/bwdmedia/*.conf"
</VirtualHost>
<VirtualHost my.ip:80>
ServerName crm.bwdmedia.net
ServerAlias www.crm.bwdmedia.net
DocumentRoot /home/bwdmedia/public_html/crm
ServerAdmin webmaster@crm.bwdmedia.net
UseCanonicalName Off
CustomLog /usr/local/apache/domlogs/crm.bwdmedia.net combined
CustomLog /usr/local/apache/domlogs/crm.bwdmedia.net-bytes_log "%{%s}t %I .\n%{%s}t %O ."
## User bwdmedia # Needed for Cpanel::ApacheConf
UserDir enabled bwdmedia
<IfModule mod_suphp.c>
suPHP_UserGroup bwdmedia bwdmedia
</IfModule>
<IfModule !mod_disable_suexec.c>
<IfModule !mod_ruid2.c>
SuexecUserGroup bwdmedia bwdmedia
</IfModule>
</IfModule>
<IfModule mod_ruid2.c>
RMode config
RUidGid bwdmedia bwdmedia
</IfModule>
<IfModule itk.c>
# For more information on MPM ITK, please read:
# http://mpm-itk.sesse.net/
AssignUserID bwdmedia bwdmedia
</IfModule>
ScriptAlias /cgi-bin/ /home/bwdmedia/public_html/crm/cgi-bin/
Include "/usr/local/apache/conf/userdata/std/2/bwdmedia/*.conf"
</VirtualHost>
cp_php_magic_include_path.conf (включаемый файл в конце предыдущего VirtualHost
ServerName www.bwdmedia.net
ServerAlias bwdmedia.co bwdmedia.org www.bwdmedia.co www.bwdmedia.org bwdmedia.net
Redirect 301 "/" "https://bwdmedia.net/"
Я пытаюсь получить доступ crm.bwdmedia.net
но меня перенаправляют на https://bwdmedia.net
. Если я закомментирую 3 строки в пункте 2, субдомен начнет работать. Так что где-то здесь проблема. Любые идеи?
Используйте RewriteCond для сопоставления доменов, отличных от example.com, и 301 перенаправьте их:
RewriteEngine On
# If the domain (any domain) is not exactly example.com...
RewriteCond %{HTTP_HOST} !^example\.com$ [NC]
RewriteRule (.*) http://example.com/$1 [L,R=301,QSA]
Вы также можете более конкретно поискать поддомены example.com. Вышеупомянутый будет соответствовать любому другому домену.
# Match only subdomains of example.com
RewriteCond %{HTTP_HOST} ^(.+)\.example\.com$ [NC]
RewriteRule (.*) http://example.com/$1 [L,R=301,QSA]