Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 25/05/2016, à 10:31

Ungars

Erreur 404 sur certaines pages [résolu]

Bonjour, j' avais commencé à poster sur le forum wordpress, mais je pense de plus en plus que le problème vient de mon serveur.

  J' ai donc récemment transféré sur une machine virtuelle (Ubuntu 14.04) un wordpress qui tournait déjà en machine virtuelle sur une Debian 8. Le but est d' y accéder depuis la machine hôte (Windows 10). J' y accède avec l' adresse ip du serveur et le nom du site, soit 192.168.1.16/annonces.

  Je ne pense pas avoir commis d' erreur lors du transfert, je peux me connecter à la base de données, j' ai modifié les liens. J' ai accès à la page d' accueil, au panneau d' admin. Seulement les pages, les billets, me donnent une erreur 404. Le lien qui s' affiche est cohérent.

  Mes permaliens sont sélectionnés pour faire apparaitre le nom de l' article, si je mets un permaliens simple, je n' ai pas ce problème.

  J' ai donc penché vers un problème de réecriture d' url (j' avais déjà eu un problème similaire sous Debian avec Prestashop) . Je fais donc un :

sudo a2enmod rewrite

  Mais le problème reste entier !

  Je ne sais pas quoi faire d' autre, avez vous une idée ?

  Je vous remercie beaucoup, bonne journée.

Dernière modification par Ungars (Le 27/05/2016, à 22:31)

Hors ligne

#2 Le 25/05/2016, à 10:44

bruno

Re : Erreur 404 sur certaines pages [résolu]

Bonjour,

Effectivement il faut que le mod rewrite soit activé et la configuration d'Apache rechangée. Il faut également vérifié que le fichier .htaccess généré par Wordpress soit bien présente à la racine du site.

Hors ligne

#3 Le 25/05/2016, à 10:58

Ungars

Re : Erreur 404 sur certaines pages [résolu]

Bonjour,
  Merci pour ta réponse.
  La ligne de commande que j' ai décrite plus haut est elle suffisante (avec un reboot d' apache) ?
  Le .htaccess est bien présent à la racine.

  Bonne journée.

Hors ligne

#4 Le 25/05/2016, à 11:04

bruno

Re : Erreur 404 sur certaines pages [résolu]

Normalement oui, mais c'est bien d'indiquer le retour tes commandes que tu utilises afin que l'on puisse voir si cela c'est bien passé

Ton .htaccess doit contenir ceci :

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

Hors ligne

#5 Le 25/05/2016, à 11:18

Ungars

Re : Erreur 404 sur certaines pages [résolu]

Voici mon .htaccess

 BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

  Je n' ai pas le retour de commande lorsque j' ai lancé dans apache l' url rewrite, mais pas de message d' erreur de mémoire. Si je relance la commande, j' ai :

mode rewrite already enabled

  Merci

Hors ligne

#6 Le 25/05/2016, à 12:04

bruno

Re : Erreur 404 sur certaines pages [résolu]

Ok c'est que le module est déjà activé.

Attention si ton wordpress est installé dans un sous-dossier le fautif est peut-être

RewriteBase /

Il faut peut être commenter cette ligne ou écrire si ton sous-dossier s'apelle annonces

RewriteBase /annonces/

Dernière modification par bruno (Le 25/05/2016, à 13:29)

Hors ligne

#7 Le 25/05/2016, à 13:17

Ungars

Re : Erreur 404 sur certaines pages [résolu]

Entre mon dernier post, le .htaccess a été régénéré, le rewrite base a donné :

/annonces/

  J' ai supprimé le dernier / , commenté la ligne, mais c' est toujours pareil !
  Je n' ai aucune ligne dans l' error log d' apache à l' heure ou j' ai une erreur 404, et une seul ligne dans le syslog, mais rien à voir avec une erreur 404, et pas d' erreur.

  Bon après midi.

Hors ligne

#8 Le 25/05/2016, à 13:33

bruno

Re : Erreur 404 sur certaines pages [résolu]

Il ne faut pas enlever le / terminal…
Cela devrait fonctionner.
Depuis ta page d'accueil il faudrait que tu copies l'URL complète d'une page ou d'un article qui provoque une erreur 404 et que tu la colles ici.
En tout cas vérifie bien que cette URL est du type http://192.168.1.16/annonces/mon-super-article

Hors ligne

#9 Le 25/05/2016, à 13:44

Ungars

Re : Erreur 404 sur certaines pages [résolu]

Voici une url provoquant une erreur 404 :

http://192.168.1.16/annonces/another-wordpress-classifieds-plugin/categories/7/autour-de-la-roue/

  Qui donne pour erreur :

Not Found

The requested URL /annonces/another-wordpress-classifieds-plugin/categories/7/autour-de-la-roue/ was not found on this server.
Apache/2.4.7 (Ubuntu) Server at 192.168.1.16 Port 80

  Si je consulte la même page, sur un autre serveur en local (celui depuis lequel j' ai copié le wordpress sur mon serveur qui pose problème) :

http://localhost/annonces/another-wordpress-classifieds-plugin/categories/7/autour-de-la-roue/

.

  Cela semble être construit pareil (à part le nom du serveur) .

  Là j' ai pris l' exemple avec le plugin awpcp, mais le problème est le même avec une page ou un article.

  Edit : même configuration sur un serveur Debian 8 virtualisé (celui dont vient le wordpress que j' ai transféré sur mon Ubuntu qui pose problème) , je peux y accéder sans problème depuis la machine hôte. Pas d' erreur 404 !

Dernière modification par Ungars (Le 25/05/2016, à 14:53)

Hors ligne

#10 Le 25/05/2016, à 15:08

bruno

Re : Erreur 404 sur certaines pages [résolu]

Alors il faut que tu regardes les fichiers de configuration Apache. Il est possible que ton .htaccess ne soit pas interprété (voir la directive Allowoverride)

Hors ligne

#11 Le 25/05/2016, à 20:22

Ungars

Re : Erreur 404 sur certaines pages [résolu]

Je dois voir ça dans etc /apache2/apache2.conf c' est ça ?
J' ai une rubrique qui parle de .htaccess :

AccessFileName .htaccess

#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
<FilesMatch "^\.ht">
	Require all denied
</FilesMatch>

  Mais cela ressemble à la même rurbique de ma debian qui ne me pose pas de problème :

AccessFileName .htaccess

#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
<FilesMatch "^\.ht">
	Require all denied
</FilesMatch>

  Bonne soirée

Hors ligne

#12 Le 26/05/2016, à 10:42

bruno

Re : Erreur 404 sur certaines pages [résolu]

Non il faut regarder dans la configuration de ton (tes) hôte(s) virtuel(s). Les fichiers sont dans /etc/apache2/sites-enabled

Hors ligne

#13 Le 26/05/2016, à 19:45

Ungars

Re : Erreur 404 sur certaines pages [résolu]

Je n' ai pas créé de Virtualhost, je te mets le contenu du fichier defaut.conf :

<VirtualHost *:80>
	# The ServerName directive sets the request scheme, hostname and port that
	# the server uses to identify itself. This is used when creating
	# redirection URLs. In the context of virtual hosts, the ServerName
	# specifies what hostname must appear in the request's Host: header to
	# match this virtual host. For the default virtual host (this file) this
	# value is not decisive as it is used as a last resort host regardless.
	# However, you must set it for any further virtual host explicitly.
	#ServerName www.example.com

	ServerAdmin webmaster@localhost
	DocumentRoot /var/www/html

	# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
	# error, crit, alert, emerg.
	# It is also possible to configure the loglevel for particular
	# modules, e.g.
	#LogLevel info ssl:warn

	ErrorLog ${APACHE_LOG_DIR}/error.log
	CustomLog ${APACHE_LOG_DIR}/access.log combined

	# For most configuration files from conf-available/, which are
	# enabled or disabled at a global level, it is possible to
	# include a line for only one particular virtual host. For example the
	# following line enables the CGI configuration for this host only
	# after it has been globally disabled with "a2disconf".
	#Include conf-available/serve-cgi-bin.conf
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

  Bonne soirée.

Hors ligne

#14 Le 26/05/2016, à 20:51

bruno

Re : Erreur 404 sur certaines pages [résolu]

Un serveur web cela nécessite un minimum de configuration…

<VirtualHost *:80>

	ServerAdmin webmaster@localhost
	DocumentRoot /var/www/html

	<Directory /var/www/html>
            Allowoverride all 
            Require all granted 
        </Directory>

	ErrorLog ${APACHE_LOG_DIR}/error.log
	CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Hors ligne

#15 Le 27/05/2016, à 22:30

Ungars

Re : Erreur 404 sur certaines pages [résolu]

Bonsoir,
  Oui je suis d' accord avec toi, mais pour ma défense, sur Debian j' avais la même chose :

<VirtualHost *:80>
	# The ServerName directive sets the request scheme, hostname and port that
	# the server uses to identify itself. This is used when creating
	# redirection URLs. In the context of virtual hosts, the ServerName
	# specifies what hostname must appear in the request's Host: header to
	# match this virtual host. For the default virtual host (this file) this
	# value is not decisive as it is used as a last resort host regardless.
	# However, you must set it for any further virtual host explicitly.
	#ServerName www.example.com

	ServerAdmin webmaster@localhost
	DocumentRoot /var/www/html

	# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
	# error, crit, alert, emerg.
	# It is also possible to configure the loglevel for particular
	# modules, e.g.
	#LogLevel info ssl:warn

	ErrorLog ${APACHE_LOG_DIR}/error.log
	CustomLog ${APACHE_LOG_DIR}/access.log combined

	# For most configuration files from conf-available/, which are
	# enabled or disabled at a global level, it is possible to
	# include a line for only one particular virtual host. For example the
	# following line enables the CGI configuration for this host only
	# after it has been globally disabled with "a2disconf".
	#Include conf-available/serve-cgi-bin.conf
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

  Et ça tournait . Je ne me suis jamais occupé de Virtualhost, je ne dis pas que c' est bien, c' est juste que cela fonctionnait sans.

  En tout cas maintenant ça roule, merci à toi.

Hors ligne

#16 Le 27/05/2016, à 23:16

Rufus T. Firefly

Re : Erreur 404 sur certaines pages [résolu]

Salut,

Je pense que l'explication est là :
apache2.conf

<Directory /var/www/html/>
	Options Indexes FollowSymLinks
	AllowOverride None
	Require all granted
</Directory>

AllowOverride None ! Donc .htaccess, tintin...
Et si tu regardes le vhost (qui est simplement inclus à la volée dans apache2.conf : IncludeOptional sites-enabled/*.conf)

<Directory /var/www/html>
	Allowoverride all 
	Require all granted 
</Directory>

Allowoverride all ! Ce qui réactive les .htaccess

Enfin, je crois...
http://httpd.apache.org/docs/2.4/fr/mod … owoverride

Dernière modification par Rufus T. Firefly (Le 27/05/2016, à 23:21)


La provocation est une façon de remettre la réalité sur ses pieds. (Bertolt Brecht)
Il n'y a pas de route royale pour la science et ceux-là seulement ont chance d'arriver à ses sommets lumineux qui ne craignent pas de se fatiguer à gravir ses sentiers escarpés. (Karl Marx)
Il est devenu plus facile de penser la fin du monde que la fin du capitalisme

Hors ligne

#17 Le 28/05/2016, à 17:03

Ungars

Re : Erreur 404 sur certaines pages [résolu]

Bonsoir,
  Ce que je ne comprends pas, c' est que mon fichier de configuration, qu' il soit sous Ubuntu ou Debian, est le même, il y a dans les 2 cette directive :

ServerAdmin webmaster@localhost
	DocumentRoot /var/www/html

  Sous Debian avec ça cela marche, pas sous Ubuntu.

Hors ligne

#18 Le 29/05/2016, à 09:38

bruno

Re : Erreur 404 sur certaines pages [résolu]

Effectivement, à version d'Apache équivalente, les fichiers de configuration fournis par les paquets Debian et Ubuntu sont strictement identiques.
Sur ton installation Debian tu as donc forcément modifié soit le fichier apache2.conf, soit celui de l'hôte virtuel pour autoriser les .htaccess (directive Allowoverride).

Hors ligne

#19 Le 29/05/2016, à 10:58

Ungars

Re : Erreur 404 sur certaines pages [résolu]

Voici le apache2.conf d' Ubuntu :

# This is the main Apache server configuration file.  It contains the
# configuration directives that give the server its instructions.
# See http://httpd.apache.org/docs/2.4/ for detailed information about
# the directives and /usr/share/doc/apache2/README.Debian about Debian specific
# hints.
#
#
# Summary of how the Apache 2 configuration works in Debian:
# The Apache 2 web server configuration in Debian is quite different to
# upstream's suggested way to configure the web server. This is because Debian's
# default Apache2 installation attempts to make adding and removing modules,
# virtual hosts, and extra configuration directives as flexible as possible, in
# order to make automating the changes and administering the server as easy as
# possible.

# It is split into several files forming the configuration hierarchy outlined
# below, all located in the /etc/apache2/ directory:
#
#	/etc/apache2/
#	|-- apache2.conf
#	|	`--  ports.conf
#	|-- mods-enabled
#	|	|-- *.load
#	|	`-- *.conf
#	|-- conf-enabled
#	|	`-- *.conf
# 	`-- sites-enabled
#	 	`-- *.conf
#
#
# * apache2.conf is the main configuration file (this file). It puts the pieces
#   together by including all remaining configuration files when starting up the
#   web server.
#
# * ports.conf is always included from the main configuration file. It is
#   supposed to determine listening ports for incoming connections which can be
#   customized anytime.
#
# * Configuration files in the mods-enabled/, conf-enabled/ and sites-enabled/
#   directories contain particular configuration snippets which manage modules,
#   global configuration fragments, or virtual host configurations,
#   respectively.
#
#   They are activated by symlinking available configuration files from their
#   respective *-available/ counterparts. These should be managed by using our
#   helpers a2enmod/a2dismod, a2ensite/a2dissite and a2enconf/a2disconf. See
#   their respective man pages for detailed information.
#
# * The binary is called apache2. Due to the use of environment variables, in
#   the default configuration, apache2 needs to be started/stopped with
#   /etc/init.d/apache2 or apache2ctl. Calling /usr/bin/apache2 directly will not
#   work with the default configuration.


# Global configuration
#

#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
#
# NOTE!  If you intend to place this on an NFS (or otherwise network)
# mounted filesystem then please read the Mutex documentation (available
# at <URL:http://httpd.apache.org/docs/2.4/mod/core.html#mutex>);
# you will save yourself a lot of trouble.
#
# Do NOT add a slash at the end of the directory path.
#
#ServerRoot "/etc/apache2"

#
# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
#
Mutex file:${APACHE_LOCK_DIR} default

#
# PidFile: The file in which the server should record its process
# identification number when it starts.
# This needs to be set in /etc/apache2/envvars
#
PidFile ${APACHE_PID_FILE}

#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300

#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On

#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100

#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 5


# These need to be set in /etc/apache2/envvars
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}

#
# HostnameLookups: Log the names of clients or just their IP addresses
# e.g., www.apache.org (on) or 204.62.129.132 (off).
# The default is off because it'd be overall better for the net if people
# had to knowingly turn this feature on, since enabling it means that
# each client request will result in AT LEAST one lookup request to the
# nameserver.
#
HostnameLookups Off

# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here.  If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog ${APACHE_LOG_DIR}/error.log

#
# LogLevel: Control the severity of messages logged to the error_log.
# Available values: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the log level for particular modules, e.g.
# "LogLevel info ssl:warn"
#
LogLevel warn

# Include module configuration:
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf

# Include list of ports to listen on
Include ports.conf


# Sets the default security model of the Apache2 HTTPD server. It does
# not allow access to the root filesystem outside of /usr/share and /var/www.
# The former is used by web applications packaged in Debian,
# the latter may be used for local directories served by the web server. If
# your system is serving content from a sub-directory in /srv you must allow
# access here, or in any related virtual host.
<Directory />
	Options FollowSymLinks
	AllowOverride None
	Require all denied
</Directory>

<Directory /usr/share>
	AllowOverride None
	Require all granted
</Directory>

<Directory /var/www/>
	Options Indexes FollowSymLinks
	AllowOverride None
	Require all granted
</Directory>

#<Directory /srv/>
#	Options Indexes FollowSymLinks
#	AllowOverride None
#	Require all granted
#</Directory>




# AccessFileName: The name of the file to look for in each directory
# for additional configuration directives.  See also the AllowOverride
# directive.
#
AccessFileName .htaccess

#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
<FilesMatch "^\.ht">
	Require all denied
</FilesMatch>


#
# The following directives define some format nicknames for use with
# a CustomLog directive.
#
# These deviate from the Common Log Format definitions in that they use %O
# (the actual bytes sent including headers) instead of %b (the size of the
# requested file), because the latter makes it impossible to detect partial
# requests.
#
# Note that the use of %{X-Forwarded-For}i instead of %h is not recommended.
# Use mod_remoteip instead.
#
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

# Include of directories ignores editors' and dpkg's backup files,
# see README.Debian for details.

# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf

# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

  Et celui de Debian :

# This is the main Apache server configuration file.  It contains the
# configuration directives that give the server its instructions.
# See http://httpd.apache.org/docs/2.4/ for detailed information about
# the directives and /usr/share/doc/apache2/README.Debian about Debian specific
# hints.
#
#
# Summary of how the Apache 2 configuration works in Debian:
# The Apache 2 web server configuration in Debian is quite different to
# upstream's suggested way to configure the web server. This is because Debian's
# default Apache2 installation attempts to make adding and removing modules,
# virtual hosts, and extra configuration directives as flexible as possible, in
# order to make automating the changes and administering the server as easy as
# possible.

# It is split into several files forming the configuration hierarchy outlined
# below, all located in the /etc/apache2/ directory:
#
#	/etc/apache2/
#	|-- apache2.conf
#	|	`--  ports.conf
#	|-- mods-enabled
#	|	|-- *.load
#	|	`-- *.conf
#	|-- conf-enabled
#	|	`-- *.conf
# 	`-- sites-enabled
#	 	`-- *.conf
#
#
# * apache2.conf is the main configuration file (this file). It puts the pieces
#   together by including all remaining configuration files when starting up the
#   web server.
#
# * ports.conf is always included from the main configuration file. It is
#   supposed to determine listening ports for incoming connections which can be
#   customized anytime.
#
# * Configuration files in the mods-enabled/, conf-enabled/ and sites-enabled/
#   directories contain particular configuration snippets which manage modules,
#   global configuration fragments, or virtual host configurations,
#   respectively.
#
#   They are activated by symlinking available configuration files from their
#   respective *-available/ counterparts. These should be managed by using our
#   helpers a2enmod/a2dismod, a2ensite/a2dissite and a2enconf/a2disconf. See
#   their respective man pages for detailed information.
#
# * The binary is called apache2. Due to the use of environment variables, in
#   the default configuration, apache2 needs to be started/stopped with
#   /etc/init.d/apache2 or apache2ctl. Calling /usr/bin/apache2 directly will not
#   work with the default configuration.


# Global configuration
#

#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
#
# NOTE!  If you intend to place this on an NFS (or otherwise network)
# mounted filesystem then please read the Mutex documentation (available
# at <URL:http://httpd.apache.org/docs/2.4/mod/core.html#mutex>);
# you will save yourself a lot of trouble.
#
# Do NOT add a slash at the end of the directory path.
#
#ServerRoot "/etc/apache2"

#
# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
#
Mutex file:${APACHE_LOCK_DIR} default

#
# PidFile: The file in which the server should record its process
# identification number when it starts.
# This needs to be set in /etc/apache2/envvars
#
PidFile ${APACHE_PID_FILE}

#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300

#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On

#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100

#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 5


# These need to be set in /etc/apache2/envvars
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}

#
# HostnameLookups: Log the names of clients or just their IP addresses
# e.g., www.apache.org (on) or 204.62.129.132 (off).
# The default is off because it'd be overall better for the net if people
# had to knowingly turn this feature on, since enabling it means that
# each client request will result in AT LEAST one lookup request to the
# nameserver.
#
HostnameLookups Off

# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here.  If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog ${APACHE_LOG_DIR}/error.log

#
# LogLevel: Control the severity of messages logged to the error_log.
# Available values: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the log level for particular modules, e.g.
# "LogLevel info ssl:warn"
#
LogLevel warn

# Include module configuration:
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf

# Include list of ports to listen on
Include ports.conf


# Sets the default security model of the Apache2 HTTPD server. It does
# not allow access to the root filesystem outside of /usr/share and /var/www.
# The former is used by web applications packaged in Debian,
# the latter may be used for local directories served by the web server. If
# your system is serving content from a sub-directory in /srv you must allow
# access here, or in any related virtual host.
<Directory />
	Options FollowSymLinks
	AllowOverride all
	Require all denied
</Directory>

<Directory /usr/share>
	AllowOverride None
	Require all granted
</Directory>

<Directory /var/www/>
	Options Indexes FollowSymLinks
	AllowOverride all
	Require all granted
</Directory>

#<Directory /srv/>
#	Options Indexes FollowSymLinks
#	AllowOverride None
#	Require all granted
#</Directory>




# AccessFileName: The name of the file to look for in each directory
# for additional configuration directives.  See also the AllowOverride
# directive.
#
AccessFileName .htaccess

#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
<FilesMatch "^\.ht">
	Require all denied
</FilesMatch>


#
# The following directives define some format nicknames for use with
# a CustomLog directive.
#
# These deviate from the Common Log Format definitions in that they use %O
# (the actual bytes sent including headers) instead of %b (the size of the
# requested file), because the latter makes it impossible to detect partial
# requests.
#
# Note that the use of %{X-Forwarded-For}i instead of %h is not recommended.
# Use mod_remoteip instead.
#
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

# Include of directories ignores editors' and dpkg's backup files,
# see README.Debian for details.

# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf

# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

  Concernant la rubrique .htaccess, elle semble être la même dans les deux cas :

ccessFileName .htaccess

#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
<FilesMatch "^\.ht">
	Require all denied
</FilesMatch>

  Bonne journée.

Hors ligne

#20 Le 29/05/2016, à 11:18

Rufus T. Firefly

Re : Erreur 404 sur certaines pages [résolu]

ubuntu :

<Directory /var/www/>
	Options Indexes FollowSymLinks
	AllowOverride None
	Require all granted
</Directory>

les .htaccess sont interdits : AllowOverride None
Debian :

<Directory /var/www/>
	Options Indexes FollowSymLinks
	AllowOverride all
	Require all granted
</Directory>

les .htaccess sont autorisés : AllowOverride all
Et à mon avis, tu as dû modifier ça... un jour... Chez moi (jessie ou sid) c'est AllowOverride None.

Quant au FileMatch avec la directive require all denied, elle sert juste à interdire l'accès aux fichiers de type .ht*. Mais il s'agit de l'accès par une requête http, donc de l'extérieur. Donc c'est ça qui ne fonctionnera pas : http://ton_site/.htaccess

Dernière modification par Rufus T. Firefly (Le 29/05/2016, à 11:27)


La provocation est une façon de remettre la réalité sur ses pieds. (Bertolt Brecht)
Il n'y a pas de route royale pour la science et ceux-là seulement ont chance d'arriver à ses sommets lumineux qui ne craignent pas de se fatiguer à gravir ses sentiers escarpés. (Karl Marx)
Il est devenu plus facile de penser la fin du monde que la fin du capitalisme

Hors ligne

#21 Le 29/05/2016, à 11:35

Ungars

Re : Erreur 404 sur certaines pages [résolu]

Merci pour tes explications, il est possible que j' ai fait la modification un jour, j' ai cette debian depuis des années.

  Maintenant, quand tu fais cette commande :

sudo a2enmod rewrite

  Cela agit sur quoi ?

Hors ligne

#22 Le 29/05/2016, à 11:46

Rufus T. Firefly

Re : Erreur 404 sur certaines pages [résolu]

a2enmod active un module. Je crois que ça ne fait rien d'autre qu'un lien symbolique de /.../...availables vers /.../...enabled.
Il faut même relancer apache pour que ce soit pris en compte...

Pour le reste voir là : mod_rewrite


La provocation est une façon de remettre la réalité sur ses pieds. (Bertolt Brecht)
Il n'y a pas de route royale pour la science et ceux-là seulement ont chance d'arriver à ses sommets lumineux qui ne craignent pas de se fatiguer à gravir ses sentiers escarpés. (Karl Marx)
Il est devenu plus facile de penser la fin du monde que la fin du capitalisme

Hors ligne

#23 Le 29/05/2016, à 21:22

Ungars

Re : Erreur 404 sur certaines pages [résolu]

Bonsoir,
  Je vais regarder tout ça plus tranquillement demain.
  Merci en tout cas pour votre aide, bonne soirée.

Hors ligne