Eu tenho um site (servidor da web apache, ubuntu 14.04) configurado http://example.com e configurado com as portas 1996 e 1980.
Esses links funcionam comhttp
http://example.com/myproject
http://example.com:1996/
http://example.com:1980/
E então instalei certificados SSL e configurei este servidor para usar arquivos https
.
Mas esses links não funcionam
https://example.com:1996
https://example.com:1980
Como configurar https
no mesmo domínio para várias portas?
default.conf:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<VirtualHost *:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
ServerName example.com
SSLEngine on
SSLCertificateFile /home/ubuntu/ssl_cert/signed_cert.crt
SSLCertificateKeyFile /home/ubuntu/ssl_cert/server.key
</VirtualHost>
portas.conf:
Listen 80
<IfModule ssl_module>
Listen 443
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
</IfModule>
EDIT: Depurando a configuração do usuário, foi encontrado
netstat
que já existe um processo usando 1996/TCP:Assim, os exemplos de configuração foram alterados para 1997/TCP.
Apache
/mod_ssl
tem que ser informado que 1997/TCP e 1980/TCP são portas HTTPS. Por padrão, 443/TCP já é conhecido, mas quaisquer outras portas TCP com reconhecimento de TLS devem ser adicionadas à configuração.Caso contrário, qualquer porta não 443/TCP será tratada apenas como uma porta compatível com HTTP.
Por exemplo, no CentOS, você deve adicionar
/etc/httpd/conf.d/ssl.conf
e no Debian/Ubuntu nas/etc/apache2/ports.conf
linhas:Você também tem que definir as portas nos vhosts correspondentes:
Também é pouco conhecido, você pode fazer algo como (apenas como exemplo, não use se ainda tiver o vhost usando :*443):
Depois de editar os arquivos de configuração, você deve reiniciar o Apache. No Debian/Ubuntu, ele é reiniciado fazendo:
Do Apache - Ligação a Endereços e Portas
Nota importante: deve ser configurada apenas uma linha/diretiva de escuta por porta. Se você já tiver uma diretiva Listen para essas portas, você as comenta ou adiciona https na frente delas. Caso contrário, você terá um "Endereço já em uso" ao iniciar o Apache .
TLDR do último parágrafo: você já tem uma duplicata Ouça pelo menos 1996 em provavelmente apache2.conf, retire-a. (não, está sendo usado por outro serviço em execução)
Segunda Nota: Não use portas que você possa ter configurado em outros serviços em execução.