#1 Le 16/05/2018, à 14:05
- shojikama
[Résolu] the requested url not found on server après changement domain
Bonjour,
J'ai un soucis sur un serveur apache.
Le site était initialement installé sur un .fr, le client a voulu passer sur du .com
J'ai donc modifié les les fichier .conf du dossier sites-available pour diriger le nom de domaine en.com vers le dossier du site, modifier toutes présences du .fr au .com dans la bdd et dans le code.
Le site tourne sur la page principale, mais toutes les pages profondes donnent l'erreur "the requested url was not found on this server".
J'ai pourtant bien activé la réécriture sur le serveur, mais rien n'y fait.
Voici mes configurations 000-default.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName site.com
ServerAlias www.site.com
DocumentRoot /var/www/site/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/site/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
RewriteEngine on
RewriteCond %{SERVER_NAME} =site.com [OR]
RewriteCond %{SERVER_NAME} =www.site.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
le site.conf
<VirtualHost *:80>
ServerAdmin
DocumentRoot "/var/www/site/"
<Directory /var/www/site/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
</Directory>
ServerName site.com
ServerAlias www.site.com
Redirect permanent / https://site.com/
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteEngine on
RewriteCond %{SERVER_NAME} =www.site.com [OR]
RewriteCond %{SERVER_NAME} =site.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
Merci d'avance
Dernière modification par shojikama (Le 17/05/2018, à 08:30)
Hors ligne
#2 Le 16/05/2018, à 14:49
- bruno
Re : [Résolu] the requested url not found on server après changement domain
Bonjour,
Pourquoi deux hôtes virtuels pour servir le même site ?
Est-tu sûr que tes règles de réécritures servent à quelque chose ? A priori non puisque tu as déjà une redirection pour forcer le HTTPS :
Redirect permanent / https://site.com/
Où est la configuration de l'hôte virtuel sur le port 443 ?
#3 Le 16/05/2018, à 15:15
- shojikama
Re : [Résolu] the requested url not found on server après changement domain
Bonjour,
merci de ta réponse
oui j'ai un peu forcé comme un forceur, il s'agissait de ma première configuration vhost.
Là je vais passer uniquement la configuration sur 000-default.conf
Pour le port 443, il est configuré sur les fichier générés par le passage en https par letsencrypt. C'est le même contenu mais avec les balises virtualhost 443 et avec un fichier du genre
000-default-le-ssl.conf.
Je suis repassé à l'ancienne config en .fr, uniquement avec le 000-default.conf et le 000-default-le-ssl.conf, le soucis de 404 sur les pages profondes persistes
Dernière modification par shojikama (Le 16/05/2018, à 15:19)
Hors ligne
#4 Le 16/05/2018, à 15:58
- bruno
Re : [Résolu] the requested url not found on server après changement domain
Pour la configuration de tes hôtes virtuel je te renvoie à la doc : https://doc.ubuntu-fr.org/apache2#hotes_virtuels
Il faut que tu examines les logs quant tu as une erreur 404, cela devrait te permettre de comprendre ce qui se passe.
#5 Le 16/05/2018, à 16:02
- shojikama
Re : [Résolu] the requested url not found on server après changement domain
Les logs via journal-ctl xe me donneront ce genre d'info ?
Hors ligne
#6 Le 16/05/2018, à 16:23
- bruno
Re : [Résolu] the requested url not found on server après changement domain
Non regarde les fichiers journaux d'apache (journalctl est en mémoire sauf configuration spécifique). Au vu de ta configuration il faut regarder /var/log/apache2/access.log
#7 Le 16/05/2018, à 23:34
- krodelabestiole
Re : [Résolu] the requested url not found on server après changement domain
pour info, et pour m'aider à mettre à jour la doc tu pourrais stp m'indiquer quelle(s) documentation / tuto tu as suivi(s) pour mettre en place un hôte virtuel et en plus modifier l'hôte par défaut ?
nouveau forum ubuntu-fr on en parle là : refonte du site / nouveau design
profil - sujets récurrents - sources du site
Hors ligne
#8 Le 17/05/2018, à 08:29
- shojikama
Re : [Résolu] the requested url not found on server après changement domain
Bonjour,
J'ai trouvé la solution. Le problème ne venait pas réellement de ma configuration vhost, pas entièrement. Au moment où le site fonctionnait, il prenait en compte le .htaccess sans que je lui demande (le AllowOverride All) car il prenait en compte le fichier site.conf.
En passant sur le .com, il apache s'est tourné vers le 000-default.conf et a donc lu le AllowOverride None, le fichier .htaccess contenant les directives permettant l'utilisation autre que les dirty URLs sans lui forcément toutes mes pages autres que la home étaient en 404.
Je ne comprend cependant pas pourquoi apache a changé de fichier de configuration entre temps, mais de toute manière, c'était une erreur d'en avoir 2 !
Merci pour ton aide Bruno.
Krodelabestiole, je me suis appuyé sur plusieurs tutos pour la config vhost, mais le seul que j'ai gardé en mémoire est le suivant sur youtube https://www.youtube.com/watch?v=2PJa7SaE8Rg
Pour ce qui est du changement de domaine, je n'ai pas suivi de tuto en particulier.
Hors ligne