OVH Community, votre nouvel espace communautaire.

Erreur 404 suite à mise à jour de la version PHP dans htaccess


badiha
24/12/2014, 19h17
Citation Envoyé par gierschv
Il est pris en compte sur tous les hébergements, simplement qu'il n'est pas présent par défaut pour les anciens comptes.
Ok ce qui voudrait dire qu'en fait je suis en 5.4 même si mon htaccess est en Ver 5 ?

Merci

gierschv
24/12/2014, 14h34
Citation Envoyé par badiha
Oui pour tous les sites montés après 2012 si je ne dis pas de bêtises. Si le site a été enregistré avant, il y a toujours un .htaccess.
Il est pris en compte sur tous les hébergements, simplement qu'il n'est pas présent par défaut pour les anciens comptes.

janus57
24/12/2014, 01h11
Citation Envoyé par badiha
Oui pour tous les sites montés après 2012 si je ne dis pas de bêtises. Si le site a été enregistré avant, il y a toujours un .htaccess.

Mais bon, dans tous les cas, ça ne répond pas à la question héhé
Bonjour,

aucune idée sur quel mutualisé ce système est en place, mais si on peu config le PHP via le .ovhconfig on vire le PHP du .htaccess ce qui enlève déjà 1problème potentiel.

De plus il faut bien faire attention à remttre le .htaccess de wordpress, et la cas échéant (sur votre offre ne prend pas le .ovhconfig) remttre les info nécessaire au passage en PHP 5.4 (SetEnv PHP_VER 5_4).

Ce qui devrait donner un truc pour vous dans le genre :
Code:
SetEnv PHP_VER 5_4
# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress
EDIT :
ATTENTION : Le fichier .ovhconfig est présent par défaut depuis les Hébergements Web 2014. Sur les offres antérieures, il faudra le créer et le placer à la racine de votre espace disque.
Il n'est pas ajouté automatiquement sur les anciens Plans et lors d'un changement d'offre, car certains paramètres peuvent ne pas être compatibles selon la version PHP que vous utilisez.
Cf : https://www.ovh.com/fr/g1175.optimisation-php-fpm

Donc à priori compatible avec tous les mutualisé (si un membre du staff OVH pourrais le confirmer), car je sais qu'un CMS à son site de démo chez OVH et est passé au .ovhconfig pour éviter de sa faire écraser le .htaccess

Cordialement, janus57

badiha
24/12/2014, 00h34
Citation Envoyé par janus57
Bonjour,

normalement tous les mutualisés utilisent maintenant le .ovhconfig pour gérer PHP, il me semble que OVH lui même dé-conseil de l'utiliser via le .htaccess

Guide : https://www.ovh.com/fr/g1207.configurer-php-web

Cordialement, janus57
Oui pour tous les sites montés après 2012 si je ne dis pas de bêtises. Si le site a été enregistré avant, il y a toujours un .htaccess.

Mais bon, dans tous les cas, ça ne répond pas à la question héhé

janus57
23/12/2014, 20h03
Bonjour,

normalement tous les mutualisés utilisent maintenant le .ovhconfig pour gérer PHP, il me semble que OVH lui même dé-conseil de l'utiliser via le .htaccess

Guide : https://www.ovh.com/fr/g1207.configurer-php-web

Cordialement, janus57

badiha
23/12/2014, 19h12
Même erreur de mon côté.

Gaston, peut-être une explication ?

Après mise à jour WP 4.1, page principale de mon site (et seulement celle-ci) avec affichage de maintenance. Pas moyen de trouver pourquoi jusqu'à ce que je supprime le htaccess.

A ce moment, on me dit qu'il faut que je passe à 5.2. (Ma version PHP sur htaccess etant en Ver_5) et 404 sur TOUTES les pages

Alors je remets mon htaccess tel quel. Ver_5 donc et pof plus aucune erreur... Je suis un peu sur les fesses. Une idée ?

Première fois que j'ai l'erreur, et a priori pas la seule sur le forum

minimat
20/12/2014, 18h42
Ok. Enfin c'était plus une question de "culture générale", explorer ce paramètre ne m'a pas fait avancer. Si je pouvais juste faire une clean install de WP et importer ma base de données principale. Ce sont des choses que je sais faire, que j'ai faites et refaites depuis ce matin, mais rien n'y fait.

Jikoo
20/12/2014, 18h35
oui minimat, WP génère un .htaccess automatiquement (notamment pour les règles de permalien). Tu peux aussi y apporter des modifications.
Et comme c'est open-source, tu peux aussi le faire toi même.

minimat
20/12/2014, 18h30
Bonsoir,
Je suis en train de souffrir sur ce topic mais comme je fouille partout désespérément et que le problème du htaccess paraît fréquent, je suis tombé sur cette discussion et j'aimerais savoir comment on passe d'un .htaccess tel que le mien, qui ne contient que SetEnv PHP_VER 5, à un fichier interminable comme celui ci-dessus? Est-ce que le site génère lui-même toutes ces modifications une fois qu'il est opérationnel?

mathosset
29/10/2014, 15h23
Pardon je suis désolé. Mille excuses.
Merci beaucoup à toi pour ton aide et ta réactivité.

Gaston_Phone
29/10/2014, 14h52
Je me dis MERCI.

mathosset
29/10/2014, 14h45
Bon apparemment en remontant tout simplement juste en dessous de la ligne SetEnv PHP_VER 5_3 le bloc ci-dessous, cela marche :
# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

mathosset
29/10/2014, 14h32
Je ne suis pas sur de comprendre et je suis sur Wordpress.

Voici mon fichier htaccess. Que dois-je changer selon vous ?

SetEnv PHP_VER 5_3
# BEGIN WP Rocket v2.3.5
# Use UTF-8 encoding for anything served text/plain or text/html
AddDefaultCharset UTF-8
# Force UTF-8 for a number of file formats

AddCharset UTF-8 .atom .css .js .json .rss .vtt .xml


# FileETag None is not enough for every server.

Header unset ETag


# Since we're sending far-future expires, we don't need ETags for static content.
# developer.yahoo.com/performance/rules.html#etags
FileETag None




Header set X-Powered-By "WP Rocket/2.3.5"
Header unset Pragma
Header append Cache-Control "public"
Header unset Last-Modified





Header unset Pragma
Header append Cache-Control "public"




# Expires headers (for better cache control)

ExpiresActive on

# Perhaps better to whitelist expires rules? Perhaps.
ExpiresDefault "access plus 1 month"

# cache.appcache needs re-requests in FF 3.6 (thanks Remy ~Introducing HTML5)
ExpiresByType text/cache-manifest "access plus 0 seconds"

# Your document html
ExpiresByType text/html "access plus 0 seconds"

# Data
ExpiresByType text/xml "access plus 0 seconds"
ExpiresByType application/xml "access plus 0 seconds"
ExpiresByType application/json "access plus 0 seconds"

# Feed
ExpiresByType application/rss+xml "access plus 1 hour"
ExpiresByType application/atom+xml "access plus 1 hour"

# Favicon (cannot be renamed)
ExpiresByType image/x-icon "access plus 1 week"

# Media: images, video, audio
ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType video/ogg "access plus 1 month"
ExpiresByType audio/ogg "access plus 1 month"
ExpiresByType video/mp4 "access plus 1 month"
ExpiresByType video/webm "access plus 1 month"

# HTC files (css3pie)
ExpiresByType text/x-component "access plus 1 month"

# Webfonts
ExpiresByType application/x-font-ttf "access plus 1 month"
ExpiresByType font/opentype "access plus 1 month"
ExpiresByType application/x-font-woff "access plus 1 month"
ExpiresByType image/svg+xml "access plus 1 month"
ExpiresByType application/vnd.ms-fontobject "access plus 1 month"

# CSS and JavaScript
ExpiresByType text/css "access plus 1 year"
ExpiresByType application/javascript "access plus 1 year"



# Gzip compression

# Active compression
SetOutputFilter DEFLATE
# Force deflate for mangled headers


SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding
RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding
# Don't compress images and other uncompressible content
SetEnvIfNoCase Request_URI \
\.(?:gif|jpe?g|png|rar|zip|exe|flv|mov|wma|mp3|avi |swf|mp?g)$ no-gzip dont-vary



# Compress all output labeled with one of the following MIME-types

AddOutputFilterByType DEFLATE application/atom+xml \
application/javascript \
application/json \
application/rss+xml \
application/vnd.ms-fontobject \
application/x-font-ttf \
application/xhtml+xml \
application/xml \
font/opentype \
image/svg+xml \
image/x-icon \
text/css \
text/html \
text/plain \
text/x-component \
text/xml


Header append Vary User-Agent env=!dont-vary




AddType text/html .html_gzip
AddEncoding gzip .html_gzip


SetEnvIfNoCase Request_URI \.html_gzip$ no-gzip



RewriteEngine On
RewriteBase /
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteRule .* - [E=WPR_ENC:_gzip]
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{QUERY_STRING} =""
RewriteCond %{HTTP:Cookie} !(wordpress_logged_in_|wp-postpass_|wptouch_switch_toggle|comment_author_|co mment_author_email_) [NC]
RewriteCond %{REQUEST_URI} !^(.*/feed/)$ [NC]
RewriteCond %{HTTP_USER_AGENT} !^(facebookexternalhit).* [NC]
RewriteCond %{HTTPS} off
RewriteCond "%{DOCUMENT_ROOT}/wp-content/cache/wp-rocket/%{HTTP_HOST}%{REQUEST_URI}/index.html%{ENV:WPR_ENC}" -f
RewriteRule .* "/wp-content/cache/wp-rocket/%{HTTP_HOST}%{REQUEST_URI}/index.html%{ENV:WPR_ENC}" [L]

# END WP Rocket

# BEGIN Better WP Security
Order Allow,Deny
Deny from env=DenyAccess
Allow from all
SetEnvIF REMOTE_ADDR "^149\.154\.64\.114$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^149\.154\.64\.114$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^149\.154\.64\.114$" DenyAccess
SetEnvIF REMOTE_ADDR "^176\.120\.25\.31$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^176\.120\.25\.31$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^176\.120\.25\.31$" DenyAccess
SetEnvIF REMOTE_ADDR "^176\.31\.116\.34$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^176\.31\.116\.34$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^176\.31\.116\.34$" DenyAccess
SetEnvIF REMOTE_ADDR "^188\.64\.59\.235$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^188\.64\.59\.235$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^188\.64\.59\.235$" DenyAccess
SetEnvIF REMOTE_ADDR "^191\.241\.143\.11$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^191\.241\.143\.11$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^191\.241\.143\.11$" DenyAccess
SetEnvIF REMOTE_ADDR "^193\.201\.224\.102$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^193\.201\.224\.102$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^193\.201\.224\.102$" DenyAccess
SetEnvIF REMOTE_ADDR "^193\.201\.224\.94$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^193\.201\.224\.94$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^193\.201\.224\.94$" DenyAccess
SetEnvIF REMOTE_ADDR "^195\.3\.144\.84$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^195\.3\.144\.84$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^195\.3\.144\.84$" DenyAccess
SetEnvIF REMOTE_ADDR "^199\.102\.224\.10$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^199\.102\.224\.10$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^199\.102\.224\.10$" DenyAccess
SetEnvIF REMOTE_ADDR "^208\.109\.101\.214$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^208\.109\.101\.214$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^208\.109\.101\.214$" DenyAccess
SetEnvIF REMOTE_ADDR "^208\.66\.72\.154$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^208\.66\.72\.154$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^208\.66\.72\.154$" DenyAccess
SetEnvIF REMOTE_ADDR "^213\.252\.120\.116$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^213\.252\.120\.116$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^213\.252\.120\.116$" DenyAccess
SetEnvIF REMOTE_ADDR "^216\.55\.142\.211$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^216\.55\.142\.211$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^216\.55\.142\.211$" DenyAccess
SetEnvIF REMOTE_ADDR "^46\.29\.93\.6$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^46\.29\.93\.6$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^46\.29\.93\.6$" DenyAccess
SetEnvIF REMOTE_ADDR "^54\.201\.62\.106$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^54\.201\.62\.106$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^54\.201\.62\.106$" DenyAccess
SetEnvIF REMOTE_ADDR "^62\.210\.99\.136$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^62\.210\.99\.136$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^62\.210\.99\.136$" DenyAccess
SetEnvIF REMOTE_ADDR "^69\.10\.135\.82$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^69\.10\.135\.82$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^69\.10\.135\.82$" DenyAccess
SetEnvIF REMOTE_ADDR "^72\.249\.105\.83$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^72\.249\.105\.83$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^72\.249\.105\.83$" DenyAccess
SetEnvIF REMOTE_ADDR "^91\.200\.12\.14$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^91\.200\.12\.14$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^91\.200\.12\.14$" DenyAccess
SetEnvIF REMOTE_ADDR "^94\.23\.33\.29$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^94\.23\.33\.29$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^94\.23\.33\.29$" DenyAccess
SetEnvIF REMOTE_ADDR "^212\.58\.2\.76$" DenyAccess
SetEnvIF X-FORWARDED-FOR "^212\.58\.2\.76$" DenyAccess
SetEnvIF X-CLUSTER-CLIENT-IP "^212\.58\.2\.76$" DenyAccess
# END Better WP Security

# BEGIN WP Rocket v2.3.4
# Use UTF-8 encoding for anything served text/plain or text/html
AddDefaultCharset UTF-8
# Force UTF-8 for a number of file formats

AddCharset UTF-8 .atom .css .js .json .rss .vtt .xml

# FileETag None is not enough for every server.

Header unset ETag

# Since we're sending far-future expires, we don't need ETags for static content.
# developer.yahoo.com/performance/rules.html#etags
FileETag None



Header set X-Powered-By "WP Rocket/2.3.4"
Header unset Pragma
Header append Cache-Control "public"
Header unset Last-Modified




Header unset Pragma
Header append Cache-Control "public"
# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

Gaston_Phone
29/10/2014, 14h10
Config de base a mettre au tout debut du fichier /www/.htaccess
Options -Indexes
Options -Multiviews
Options +FollowSymLinks
SetEnv REGISTER_GLOBALS 0
Header set Cache-Control "no-cache"

SetEnv PHP_VER 5_4

RewriteEngine On
Exemple --> CMS - JOOMLA - Installation chez OVH

mathosset
29/10/2014, 14h02
Citation Envoyé par Gaston_Phone
Tu as du virer l' URLWriting.
Merci pour votre retour. Je n'ai pourtant fait que rajouter une ligne dans mon fichier htaccess.
Et comment fait-on selon vous pour remettre l'URLWriting ?

Gaston_Phone
29/10/2014, 13h05
Tu as du virer l' URLWriting.

mathosset
29/10/2014, 11h06
Bonjour,
Je n'arrivais plus à accéder à mon site Wordpress ce matin car la version php n'était pas à jour, Wordpress 4 nécessitant une version supérieure à PHP 5.2.4

Je l'ai donc mis à jour dans mon fichier htaccess en plaçant la ligne suivante au début de mon fichier :
SetEnv PHP_VER 5_3

J'arrive désormais à accéder à la home-page mais je ne peux plus accéder à aucune autre page. J'ai une erreur 404 : The requested URL /bonnes-adresses-paris-13/ was not found on this server.

Merci d'avance de votre aide.
Mathieu
www.voirlemonde.fr