Eu quero: se QUALQUER site não for encontrado em (servidor Hestia 192.168.0.37), então redirecionado (gerenciador de proxy Nginx 192.168.0.36)
Dado:
- Servidor Héstia 192.168.0.37
- Gerenciador de proxy Nginx 192.168.0.36
- Site para teste testsite.com (criado no gerenciador de proxy Nginx) (Hestia não possui nenhum registro)
- postagens de héstia:
#netstat -nt4ulp | grep nginx
tcp 0 0 0.0.0.0:80 LISTEN /nginx: mast
tcp 0 0 0.0.0.0:443 LISTEN /nginx: mast
tcp 0 0 0.0.0.0:8083 LISTEN/nginx: master
tcp 0 0 127.0.0.1:8084 LISTEN /nginx: mast
#netstat -nt4ulp | grep apache
tcp 0 0 192.168.0.37:8443 LISTEN /apache2
tcp 0 0 192.168.0.37:8080 LISTEN /apache2
tcp 0 0 127.0.0.1:8081 LISTEN /apache2
================================================= ======================
Eu tento:
edite /etc/nginx/conf.d/192.168.0.37.conf
server {
listen 80 default_server;
server_name _;
location / {
proxy_pass http://192.168.0.36:80;
proxy_set_header X-Real-IP $remote_addr;
}
}
server {
listen 443 ssl default_server;
server_name _;
ssl_certificate /usr/local/hestia/ssl/certificate.crt;
ssl_certificate_key /usr/local/hestia/ssl/certificate.key;
location / {
proxy_pass https://192.168.0.36:443;
proxy_set_header X-Real-IP $remote_addr;
}
}
================================================= ======================
eu tento
HTTP/1.1 301 Moved Permanently
Server: nginx
Date: Fri, 15 Sep 2023 17:54:48 GMT
Content-Type: text/html
Content-Length: 162
Connection: keep-alive
Location: https://testsite.com/
e veja a página de (servidor Hestia 192.168.0.37) DocumentRoot /var/www/html/index.html de /etc/apache2/conf.d/192.168.0.37.conf
Listen 192.168.0.37:8443
Listen 192.168.0.37:8080
<VirtualHost 192.168.0.37:8080>
ServerName 192.168.0.37
DocumentRoot /var/www/html2/
Alias /error/ /var/www/document_errors/
</VirtualHost>
<VirtualHost 192.168.0.37:8443>
ServerName 192.168.0.37
DocumentRoot /var/www/html/
Alias /error/ /var/www/document_errors/
SSLEngine on
SSLVerifyClient none
SSLCertificateFile /usr/local/hestia/ssl/certificate.crt
SSLCertificateKeyFile /usr/local/hestia/ssl/certificate.key
</VirtualHost>
por que, como consertar?
Responder1
Este deveria ser um comentário, mas é um pouco longo.
Não sei o que você está perguntando aqui.
Se você estiver encerrando o SSL no servidor nginx, então você tem um monstro absoluto de um certificado SSL ou tem cada site configurado como um servidor separado{...} no nginx.
e veja a página de (servidor Hestia 192.168.0.37)
Sim, é exatamente isso que eu esperaria desta configuração. Você pediu http[s]://192.168.0.36 e recebeu http[s]://192.168.0.36
Se você quiser preservar o comportamento porhttps://192.168.0.36(que não é acessível fora da sub-rede) ao adicionar um novo comportamento para os vhosts desconhecidos, você precisará de um registro DNS ou entrada de hosts no proxy com um novo nome e um host virtual correspondente no Apache.
Alternativamente, como qualquer pessoa sã não tentaria operar vários sites com o mesmo certificado, basta retornar um redirecionamento do servidor padrão no nginx.