我正在努力在docker容器中使用ssl证书配置vhosts(我不认为这个问题与docker有关),当我连接到我的网站时,我不会有任何错误,只是一个空白页面,但在错误日志中我有这个:
[Tue Aug 02 09:57:58.030690 2016] [ssl:warn] [pid 754] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Tue Aug 02 09:57:58.030862 2016] [ssl:warn] [pid 754] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
这是我输入的用于创建密钥证书的命令:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -out /etc/ssl/certs/mykey.crt -keyout /etc/ssl/private/mykey.key
我测试了创建两个证书,因为我需要两个vhost,但它仍然无法工作,这是我的vhost: ServerName mysite.local
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/public
SetEnv APPLICATION_ENV "devDocker"
<Directory /var/www/html/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<Location /protected/>
AuthTokenSecret "mySuperSecret"
AuthTokenPrefix /protected/
AuthTokenTimeout 120
</Location>
ErrorLog ${APACHE_LOG_DIR}/error-scco.log
CustomLog ${APACHE_LOG_DIR}/access-scco.log combined
</VirtualHost>
<VirtualHost *:443>
ServerName mysite.local
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/public
SetEnv APPLICATION_ENV "devDocker"
<Directory /var/www/html/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<Location /protected/>
AuthTokenSecret "mySuperSecret"
AuthTokenPrefix /protected/
AuthTokenTimeout 120
</Location>
ErrorLog ${APACHE_LOG_DIR}/error-scco.log
CustomLog ${APACHE_LOG_DIR}/access-scco.log combined
SSLEngine on
SSLCertificateFile /etc/ssl/certs/mykey.crt
SSLCertificateKeyFile /etc/ssl/private/mykey.key
</VirtualHost>
<VirtualHost *:80>
ServerName devadmin.mysite.local
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/public
SetEnv APPLICATION_ENV "devDocker"
<Directory /var/www/html/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<Location /protected/>
AuthTokenSecret "mySuperSecret"
AuthTokenPrefix /protected/
AuthTokenTimeout 120
</Location>
ErrorLog ${APACHE_LOG_DIR}/error-scco.log
CustomLog ${APACHE_LOG_DIR}/access-scco.log combined
</VirtualHost>
<VirtualHost *:443>
ServerName devadmin.mysite.local
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/public
SetEnv APPLICATION_ENV "devDocker"
SetEnv APPLICATION_WEB_BOOTSTRAP "devadmin"
<Directory /var/www/html/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<Location /protected/>
AuthTokenSecret "mySuperSecret"
AuthTokenPrefix /protected/
AuthTokenTimeout 120
</Location>
ErrorLog ${APACHE_LOG_DIR}/error-scco.log
CustomLog ${APACHE_LOG_DIR}/access-scco.log combined
SSLEngine on
SSLCertificateFile /etc/ssl/certs/mykey.crt
SSLCertificateKeyFile /etc/ssl/private/mykey.key
</VirtualHost>
这是我输入service apache2 restart
时的日志:
[Tue Aug 02 09:57:56.950457 2016] [mpm_prefork:notice] [pid 711] AH00169: caught SIGTERM, shutting down
[Tue Aug 02 09:57:57.987280 2016] [ssl:warn] [pid 753] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Tue Aug 02 09:57:57.987801 2016] [ssl:warn] [pid 753] AH02292: Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
[Tue Aug 02 09:57:58.030501 2016] [ssl:warn] [pid 754] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Tue Aug 02 09:57:58.030933 2016] [ssl:warn] [pid 754] AH02292: Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
[Tue Aug 02 09:57:58.033677 2016] [mpm_prefork:notice] [pid 754] AH00163: Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.17 OpenSSL/1.0.1f configured -- resuming normal operations
[Tue Aug 02 09:57:58.033700 2016] [core:notice] [pid 754] AH00094: Command line: '/usr/sbin/apache2'
提前谢谢。
答案 0 :(得分:0)
这只是一个可以通过自签名证书获得的可忽略警告。