我使用亞馬遜Linux與Apache(Apache/2.4.25(亞馬遜))。我有幾個域名和幾個子域名。我使用letsencrypt/cerbot作爲ssl證書。這工作。我可以訪問https而沒有問題。但是,我無法訪問我的任何非默認http虛擬主機。它們都重新路由到默認虛擬主機。我只發現了其他一些沒有解析的帖子,這似乎很難搜索。 Letsencrypt抱怨說我需要虛擬主機的單獨文件,這就是我爲http和https所做的。我已經把所有的http轉移到了httpd.conf中,但這也不起作用。我的域名和子域名也有「A」記錄。我錯過了什麼?Apache虛擬主機https工作,但http只需默認虛擬主機
###Begin httpd.conf###
ServerRoot "/etc/httpd"
Listen 80
Include conf.modules.d/*.conf
User nona_yo_biz
Group nona_yo_biz
ServerAdmin [email protected]
<Directory />
AllowOverride none
Require all denied
</Directory>
<Directory "/var/www">
AllowOverride All
# Allow open access:
Require all granted
</Directory>
<Directory "/var/www/html">
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
# Load config files in the "/etc/httpd/conf.d" directory, if any.
# This is where my ssl files are stored
IncludeOptional conf.d/*.conf
#Some other module crap etc
#Some other AWS settings
<Directory "/var/www/html">
Options FollowSymLinks
AllowOverride All
DirectoryIndex index.html index.php
Require all granted
</Directory>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/www/html/basesite"
ServerName basesite.com
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/www/html/sub1example"
ServerName sub1.example.com
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/www/html/sub2example"
ServerName sub2.example.com
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/var/www/html/example"
ServerName example.com
</VirtualHost>
###End httpd.conf###
###BEGIN ssl.conf###
Listen 443 https
#Some other stuff
<VirtualHost *:443>
DocumentRoot "/var/www/html/basesite"
ServerName basesite.com:443
ErrorLog logs/ssl_error_log
TransferLog logs/ssl_access_log
LogLevel warn
SSLEngine on
SSLProtocol all -SSLv3
SSLProxyProtocol all -SSLv3
SSLHonorCipherOrder on
#Some other stuff
CustomLog logs/ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
ServerAdmin s[email protected]
SSLCertificateFile /etc/letsencrypt/live/basesite.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/basesite.com/privkey.pem
</VirtualHost>
###END ssl.conf
###Separate conf file for vhost###
<VirtualHost *:443>
ServerAdmin [email protected]
DocumentRoot "/var/www/html/sub1example"
ServerName sub1.example.com:443
SSLCertificateFile /etc/letsencrypt/live/basesite.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/basesite.com/privkey.pem
</VirtualHost>
###Separate conf file for vhost###
<VirtualHost *:443>
ServerAdmin [email protected]
DocumentRoot "/var/www/html/sub2example"
ServerName sub2.example.com:443
SSLCertificateFile /etc/letsencrypt/live/basesite.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/basesite.com/privkey.pem
</VirtualHost>
###Separate conf file for vhost###
<VirtualHost *:443>
ServerAdmin [email protected]
DocumentRoot "/var/www/html/example"
ServerName example.com:443
SSLCertificateFile /etc/letsencrypt/live/basesite.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/basesite.com/privkey.pem
</VirtualHost>
編輯的apachectl -S輸出
sudo apachectl -S
VirtualHost configuration:
*:443 is a NameVirtualHost
default server basesite.com (/etc/httpd/conf.d/ssl.conf:57)
port 443 namevhost basesite.com (/etc/httpd/conf.d/ssl.conf:57)
port 443 namevhost sub1.example.com (/etc/httpd/conf.d/ssl_sub1_exa.conf:1)
port 443 namevhost example.com (/etc/httpd/conf.d/ssl_exa.conf:1)
port 443 namevhost sub2.example.com (/etc/httpd/conf.d/ssl_sub2_exa.conf:1)
*:80 is a NameVirtualHost
default server basesite.com (/etc/httpd/conf/httpd.conf:392)
port 80 namevhost basesite.com (/etc/httpd/conf/httpd.conf:392)
port 80 namevhost sub1.example.com (/etc/httpd/conf/httpd.conf:400)
alias sub1.example.com:80
port 80 namevhost example.com (/etc/httpd/conf/httpd.conf:407)
ServerRoot: "/etc/httpd"
Main DocumentRoot: "/var/www/html/"
Main ErrorLog: "/etc/httpd/logs/error_log"
Mutex default: dir="/var/run/httpd/" mechanism=default
Mutex mpm-accept: using_defaults
Mutex cache-socache: using_defaults
Mutex authdigest-opaque: using_defaults
Mutex watchdog-callback: using_defaults
Mutex proxy-balancer-shm: using_defaults
Mutex rewrite-map: using_defaults
Mutex ssl-stapling-refresh: using_defaults
Mutex authdigest-client: using_defaults
Mutex ssl-stapling: using_defaults
Mutex proxy: using_defaults
Mutex authn-socache: using_defaults
Mutex ssl-cache: using_defaults
PidFile: "/var/run/httpd/httpd.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="nona_yo_biz" id=404
Group: name="nona_yo_biz" id=505
我已經試過了。在apache 2.4中,它已從文檔中刪除,並在檢查語法時拋出警告/錯誤。所以我沒有實際部署它就刪除了它。 – vdidxho