
Tenía dos sitios en funcionamiento en mi servidor ( nextcloud.example.com
(Nextcloud Instance) y example.com
(Grav Instance)). Agregué una configuración de Postfix en el servidor y ahora también puedo enviar correos electrónicos. Pero arruiné algo con mis certificados, así que los rehice...
Elproblema principalAhora es eso, siempre que intento abrir, example.com
siempre aparece una llamada example.com/index.php/login
que muestra la página de inicio de sesión, nextcloud.example.com
pero espero mi página principal de Grav. Además, cuando llamo, example.com/admin
se resuelve example.com/index.php/login
.
Soy bastante nuevo en este tema, así que espero que estos sean los datos relevantes:
$ apachectl configtest
Syntax OK
Inserté mis archivos de configuración aquí, pero StackExchange marcó mi área de texto como spam. Entonces los eliminé. Me complace brindarle más información, simplemente no se me permitió...
EDITAR:
apache2ctl -S
VirtualHost configuration:
127.0.1.1:443 example.com (/etc/apache2/sites-enabled/example.com-le-ssl.conf:2)
127.0.1.1:80 example.com (/etc/apache2/sites-enabled/example.com.conf:1)
5.252.225.176:443 nextcloud.example.com (/etc/apache2/sites-enabled/nextcloud.example.com-le-ssl.conf:2)
5.252.225.176:80 nextcloud.example.com (/etc/apache2/sites-enabled/nextcloud.example.com.conf:1)
ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex rewrite-map: using_defaults
Mutex ssl-stapling-refresh: using_defaults
Mutex ssl-stapling: using_defaults
Mutex ssl-cache: using_defaults
Mutex default: dir="/var/run/apache2/" mechanism=default
Mutex mpm-accept: using_defaults
Mutex watchdog-callback: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33 not_used
Group: name="www-data" id=33 not_used
<VirtualHost nextcloud.example.com:443>
DocumentRoot /var/www/nextcloud.example.com/htdocs/
ServerName nextcloud.example.com
<Directory /var/www/nextcloud.example.com/htdocs/>
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
<IfModule mod_dav.c>
Dav off
</IfModule>
</Directory>
RewriteEngine off
# Some rewrite rules in this file were disabled on your HTTPS site,
# because they have the potential to create redirection loops.
#RewriteCond %{SERVER_NAME} =nextcloud.example.com
#RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>
<IfModule mod_ssl.c>
<VirtualHost example.com:443>
DocumentRoot /var/www/example.com/htdocs/
ServerName example.com
<Directory /var/www/example.com/htdocs/>
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
<IfModule mod_dav.c>
Dav off
</IfModule>
</Directory>
RewriteEngine on
# Some rewrite rules in this file were disabled on your HTTPS site,
# because they have the potential to create redirection loops.
#RewriteCond %{SERVER_NAME} =example.com
#RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>
Respuesta1
Probablemente necesites cambiar los nombres de host en tus directivas VirtualHost a *
. Es decir, en lugar de
<VirtualHost nextcloud.example.com:443>
ServerName nextcloud.example.com
...
</VirtualHost>
<Virtualhost example.com:443>
ServerName example.com
...
</VirtualHost>
intentar
<VirtualHost *:443>
ServerName nextcloud.example.com
...
</VirtualHost>
<Virtualhost *:443>
ServerName example.com
...
</VirtualHost>
Generalmente, el argumento de VirtualHost debe ser una dirección IP o *
coincidir con todas las direcciones IP.
El primer formulario anterior fallará si la dirección IP donde Apache recibe la conexión es diferente de la dirección DNS de ejemplo.com; por ejemplo, si ejemplo.com está detrás de un proxy. En ese caso, Apache volverá a servir desde el host virtual predeterminado, que es el primero, que en su caso parece ser nextcloud.example.com.
VerAnfitrión virtual, yHosts virtuales basados en nombres.