우분투 서버에 SSL을 설정하려고 합니다. 다음 명령을 사용하여 openssl genrsa -out mydomain.key 1024
키와 인증서를 생성했습니다 openssl req -new -key mydomain.key -x509 -out mydomain.crt
. httpd.conf에 추가했는데 LoadModule ssl_module /usr/lib/apache2/modules/mod_ssl.so
, 내 httpd.conf의 관련 발췌 부분은 다음과 같습니다.
LoadModule ssl_module /usr/lib/apache2/modules/mod_ssl.so
NameVirtualHost *:80
NameVirtualHost *:443
Listen 80
Listen 443
#
# NOTE: NameVirtualHost cannot be used without a port specifier
# (e.g. :80) if mod_ssl is being used, due to the nature of the
# SSL protocol.
#
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for requests without a known
# server name.
#
<VirtualHost *:443>
ProxyPass /software-suite http://localhost:8087/software-suite
ProxyPassReverse /software-suite http://localhost:8087/software-suite
SSLEngine on
SSLCertificateFile /etc/apache2/ssl.crt/hostname.crt
SSLCertificateKeyFile /etc/apache2/ssl.key/hostname.key
</VirtualHost>
<VirtualHost *:80>
ProxyPass /software-suite http://localhost:8087/software-suite
ProxyPassReverse /software-suite http://localhost:8087/software-suite
</VirtualHost>
내가 달릴 때 sudo service apache2 start
나는 얻는다.
* Starting web server apache2 Thu Feb 25 23:01:37 2016] [warn] module ssl_module is already loaded, skipping
[Thu Feb 25 23:01:37 2016] [warn] The Alias directive in /etc/apache2/httpd.conf at line 499 will probably never match because it overlaps an earlier Alias.
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:443
no listening sockets available, shutting down
Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
하지만 내가 달릴 때, sudo netstat -ltnp | grep ':443'
아무도 듣고 있지 않아
고쳐 쓰다
<VirtualHost *:443>
노드와 그 내용을 으로 옮겼습니다 . /etc/apache2/sites-available/default-ssl
apache2를 시작하면 다음과 같은 결과가 나타납니다.
* Starting web server apache2 [Fri Feb 26 16:36:43 2016] [warn] The Alias directive in /etc/apache2/httpd.conf at line 499 will probably never match because it overlaps an earlier Alias.
[ OK ]
이제 포트 80에서 내 웹 사이트에 액세스할 수 있지만 ERR_SSL_PROTOCOL_ERROR
https를 사용하여 액세스하려고 하면 문제가 발생합니다. 또한 실행하면 포트 80으로 들어오는 요청을 처리하는 것처럼 보이지만 오류가 sudo service apache2 status
발생합니다 . 나는 또한 , 및 을 Apache2 is NOT running.
주석 처리했습니다 . 오류가 없거나 로그인만 표시됩니다.NameVirtualHost *:443
LoadModule ssl_module
Listen 443
httpd.conf
/var/log/apache2/error.log
/var/log/apache2/access.log
/var/log/apache2
답변1
여기서 답을 찾았어요https://webmasters.stackexchange.com/questions/58650/what-steps-are-required-to-enable-ssl-on-apache2-with-ubuntu. apache2를 실행하고 다시 시작해야 합니다 sudo a2ensite default-ssl
.