主域名不起作用的SSL但子域名不起作用

时间:2016-07-04 13:38:31

标签: apache ssl dns

所以我无法通过SSL使我的Web服务器正常工作。我已经用谷歌搜索了4个小时,试图让它发挥作用,但我没有运气。

假设我的域名是example.com。

我在https://example.com有一个主网站,然后我有4个子域1.example,2.example,3.example和4.example。

现在问题是,我可以访问所有子域名,但是当我尝试访问主域名时,它说它无法连接到该站点。我做错了什么?。

使用apache 2.4.20在Ubuntu 16.04上稳定。

以下是我用于虚拟主机的配置:

<VirtualHost *:443>

ServerAdmin webmaster@localhost

LoadModule headers_module modules/mod_headers.so

DocumentRoot /var/www/example.com
<Directory /var/www/example.com>
    Options FollowSymLinks Includes ExecCGI
    AllowOverride All
    Require all granted
    Allow from all
</Directory>


ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

RedirectMatch 404 \.token$

CustomLog ${APACHE_LOG_DIR}/access.log combined

SSLEngine on
SSLCertificateFile /etc/apache2/certs/cert
SSLCertificateKeyFile /etc/apache2/certs/key

ServerName www.example.com

ServerAdmin webmaster@localhost

LoadModule headers_module modules/mod_headers.so

DocumentRoot /var/www/1.example.com
<Directory /var/www/1.example.com>
    Options FollowSymLinks Includes ExecCGI
    AllowOverride All
    Require all granted
    Allow from all
</Directory>


ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

RedirectMatch 404 \.token$

CustomLog ${APACHE_LOG_DIR}/access.log combined

SSLEngine on
SSLCertificateFile /etc/apache2/certs/cert
SSLCertificateKeyFile /etc/apache2/certs/key

ServerName www.1.example.com

1 个答案:

答案 0 :(得分:0)

  

...但是当我尝试访问主域时,它说它无法连接到该站点。

由于在子域上运行了一个Web服务器,但它说它无法连接到主站点,我猜测您的主站点的IP地址与子域名不同。在这种情况下,Web服务器的配置看起来并不重要,因为它将在不同的IP地址查找Web服务器而不是找到一个。

要从客户端检查主机的IP地址(只有这一点很重要),您可以在UNIX和Mac上使用dig或nslookup等工具,或在Windows上使用nslookup。如果您发现您的子域名解析为与您的主域名不同的IP地址,则表明您找到了问题的原因。