Eu sei que meu problema já foi descrito (vejaComo redireciono subdomínios para uma porta diferente no mesmo servidor?por ex) mas como não consigo fazer funcionar do meu lado, peço novamente ajuda.
Eu tenho um servidor Apache em execução. Posso acessar todos os diferentes softwares web que estão rodando neste servidor através de subdomínios.
Ex:
https://nextcloud.meu_domínio.fr
https://roundcube.meu_domínio.fr
...
Do lado do meu provedor ISP, tenho o seguinte:
nextcloud A 10800 xx.xx.xx.xx
subsonic A 10800 xx.xx.xx.xx
Eu disse “todos” os softwares, mas isso não é verdade. Não posso fazer o mesmo com subdomínios que desejo redirecionar para portas específicas. Por exemplo, o subsônico precisa da porta 4040. Posso acessar o subsônico com:
https://my_domain.fr/subsonic
mas não com:
https://subsonic.my_domain.fr
Posso retirar a porta 4040 em campo, isso é melhor que nada, mas quero mais :)
Tenho o mesmo problema com navegador de arquivos (porta 8082), guacamole (porta 8080), ...
Para remover a porta no campo de endereço, tenho os seguintes arquivos de configuração no diretório /etc/httpd/conf/sites.d :
Arquivo 00_default_vhosts.conf:
<VirtualHost *:80>
ServerName my_domain.fr
ServerAdmin xuo@my_domain.fr
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</VirtualHost>
RewriteEngine On
Arquivo 00_default_ssl_vhost.conf
<VirtualHost *:443>
# general configuration
ServerAdmin xuo@my_domain.fr
ServerName my_domain.fr
# SSL configuration
SSLEngine on
SSLCertificateFile /etc/certificates/server.crt
SSLCertificateKeyFile /etc/certificates/server.pem
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS
SSLHonorCipherOrder on
AllowEncodedSlashes NoDecode
CustomLog logs/ssl_request_log \
"%V %t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
<IfModule mod_headers.c>
Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains; preload"
</IfModule>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^([^\.]+)\.my_domain\.fr
RewriteCond /var/www/html/%1 -l
RewriteRule ^(.*) /%1/$1 [L]
</VirtualHost>
Arquivo guacamole.conf:
<IfModule mod_proxy_http.c>
<Location /guacamole/>
Order allow,deny
Allow from all
ProxyPass http://192.168.0.14:8080/guacamole/ flushpackets=on
ProxyPassReverse http://192.168.0.14:8080/guacamole/
</Location>
<Location /guacamole/websocket-tunnel>
Order allow,deny
Allow from all
ProxyPass ws://192.168.0.14:8080/guacamole/websocket-tunnel
ProxyPassReverse ws://192.168.0.14:8080/guacamole/websocket-tunnel
</Location>
</IfModule>
Arquivo subsonic.conf:
<IfModule mod_proxy_http.c>
SSLProxyEngine on
ProxyRequests Off
ProxyPreserveHost On
RequestHeader unset Accept-Encoding
<Proxy http://192.168.0.14:4040/subsonic/>
Order allow,deny
Allow from all
</Proxy>
ProxyPass /subsonic/ http://192.168.0.14:4040/subsonic/
ProxyPassReverse /subsonic/ http://192.168.0.14:4040/subsonic/
</IfModule>
Arquivo nextcloud.conf (sem necessidade de redirecionamento de porta):
Alias /nextcloud /var/www/html/nextcloud
<Directory /var/www/html/nextcloud>
Options +FollowSymlinks
AllowOverride All
</Directory>
O "melhor" que consegui (e não me lembro como) foi obter a página principal subsônica em ambos https://subsonic.my_domain.frEhttps://meu_domínio.fr
Alguém sabe como fazer o redirecionamento de subdomínio + porta funcionar juntos? Observe que tenho vários subdomínios, então meu objetivo é poder usar nextcloud.my_domain.fr, subsonic.my_domain.fr, guacamole.my_domain.fr, ...
Cumprimentos.
Xuo.
Responder1
Desculpe, mas não vi que tinha algumas respostas. Vou dar uma olhada em "Como posso encaminhar solicitações do meu servidor web?".
Cumprimentos.
Xuo.