[RESOLU][site web perso][SPIP] Internal error

Salut la zone,

Je vous sollicite car je sais que parmi vous se cache de grands spécialistes de tous les problèmes et j�??espère comme déjà nombre de mes prédécesseurs trouver de l�??aide ici. Merci d�??avance.

36 15 My life
J�??ai un voisin sympa qui gère une association de triathlon. Pour cela il utilise notamment un site hébergé chez OVH. Son site est basé sur le CMS SPIP et tourne nickel depuis plusieurs années. Je l�??ai déjà aidé quelque fois pour des petites maintenances. J�??ai tout de même quelques compétences web�?� Cependant depuis quelques jours le site ne fonctionne plus : http://www.trisaleve.fr/ vous pouvez aller voir vous-même l�??erreur. J�??ai fais quelques recherches et apparemment SPIP et OVH ne sont pas copains.

La première chose que j�??ai faite est de contrôler que les autorisations des répertoires étaient de 705 et pas 777. Malheureusement je n�??ai pas d�??autres idées. Je peux trouver une log de l�??erreur ? Comment ?

Merci pour vos suggestions de pistes, je ne sais pas par quel bout prendre le problème.

Comme ça à tout hasard, vérifie que ton fichier .htaccess configure le serveur en PHP5 via la ligne “SetEnv PHP_VER 5”

On sait jamais…

De tout ce que j’ai vu en Spip, dès lors que tu as une erreur 500 avec, c’est généralement un problème de .htaccess, comme dit auparavant, donc il faut checker de ce côté là.

J’ajouterais que tu dois avoir accès à des logs d’erreur quelque part, c’est un bon endroit pour commencer tes investigations.

Cela dit, ovh configure la version de php par htaccess, donc si spip est livré avec un htaccess, il a du re-écrire celui d’ovh.

777 c’est le mal absolu, tu sais ca?
755 c’est tres bien

Tu dois avoir accès au log du serveur apache (generalement en ftp sur ton compte ovh) pour avoir une meilleure idee du problème

LoneWolf
Qui publie sa réponse largement en retard…

Tiens et comme j’avais pas tout lu, dans Spip, les logs sont dans le dossier /tmp, à la racine de ton site (même niveau que squelettes et compagnie) => spip.log / mysql.log / prive_spip.log (pour le backoffice).

Edit : et si ça peut aider, les seuls répertoires qui ont besoin des droits d’écritures (755 suffit normalement), c’est IMG, local et tmp.

Sinon, c’est vraiment un soucis de .htaccess hein, cf ton back office qui est accessible sans soucis :slight_smile:

Merci pour tous ces tuyaux

En effet sur les forums SPIP les problèmes de htaccess reviennent régulièrement. Dans le dossier princiapl de SPIP il y a un htaccess.txt comme expliqué je l’ai renommé en .htaccess mais rien n’y fait

J’entends aussi parler d’instructions php5 mais bon ce sont des messages de 2007 et le site tournait encore la semaine dernière je pense que si migration il y a eu elle a été faite depuis longtemps chez OVH

Voilà le contenu du htaccess.txt

[code]##############################################################

Fichier .htaccess SPIP v1.9

Permet de controler les URLs et la version de php utilisee

Compatible avec les URLs ‘html’, ‘propres’ et ‘propres2’

Permet aussi d’effectuer la transition de .PHP 3 vers .PHP

Pour utiliser ce fichier renommez-le ‘.htaccess’ dans le

repertoire racine du site, en veillant a ne pas ecraser un

.htaccess personnalise qui s’y trouverait deja

Attention certains hebergeurs desactivent tout ou partie

des fonctions du fichier .htaccess ; celui-ci est donc

indicatif - en cas de difficulte voir sur les forums SPIP

##############################################################

RewriteEngine On

################ CONFIGURATION ######################

Configuration sous-repertoire

Si votre site est dans un sous-repertoire, preciser ci-dessous

le nom du sous-repertoire, et supprimer le ‘#’

Chez certains hebergeurs il faut indiquer “RewriteBase /”

#RewriteBase /sous/repertoire/

SPIP version ‘php’ - si vous avez d’anciennes adresses en ‘.php[3]’,

supprimez le ‘#’ sur les lignes qui suivent pour rediriger les acces

errones vers le .php correspondant

#RewriteCond %{REQUEST_FILENAME} -f
#RewriteRule ^(.+).php[3]$ $1.php [QSA,L]

Fin version

################ REGLAGES PERSONNALISES ######################

Inscrivez ci-dessous vos reglages supplementaires

Permettre a IE de reconnaitre le win_png.htc de retraitement des png transparents

AddType text/x-component .htc

bloquer les acces aux repertoires .svn/ (SPIP, plugins, squelettes…)

RewriteRule ^(.*/)?.svn/ - [F]

################ GESTIONS DES URLS SPIP #######################

Si le fichier ou repertoire demande existe

ignorer toutes les regles qui suivent

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule “.” - [skip=100]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule “.” - [skip=100]

Compatibilite avec les URLS “html” (pour transition sympa)

voir fichier ecrire/urls/html.php3

RewriteRule rubrique([0-9]+).html$ spip.php?page=rubrique&id_rubrique=$1 [QSA,L]
RewriteRule article([0-9]+).html$ spip.php?page=article&id_article=$1 [QSA,L]
RewriteRule breve([0-9]+).html$ spip.php?page=breve&id_breve=$1 [QSA,L]
RewriteRule mot([0-9]+).html$ spip.php?page=mot&id_mot=$1 [QSA,L]
RewriteRule auteur([0-9]+).html$ spip.php?page=auteur&id_auteur=$1 [QSA,L]
RewriteRule site([0-9]+).html$ spip.php?page=site&id_syndic=$1 [QSA,L]

Compatibilite avec les anciennes URLS appelant directement des fichiers php

RewriteRule ^(rubrique|article|breve|mot|auteur|site|agenda|backend|backend-breves|distrib|forum|ical|plan|recherche|resume|sommaire|sommaire_texte).php3?$ spip.php?page=$1 [QSA,L]
RewriteRule ^page.php[3]? spip.php [QSA,L]
RewriteRule ^spip_cal.php3?$ spip.php?action=ical [QSA,L]
RewriteRule ^spip_rss.php3?$ spip.php?action=rss [QSA,L]

Fin compatibilite

URLs “propres” et “propres2”

pensez a regler $type_urls=‘propres’ ou ‘propres2’

dans ecrire/mes_options.php

(fichier associe : ecrire/urls/propres.php)

Les mots-cles

RewriteRule ^±[^/.]+(-+)?(.html)?$ spip.php?page=mot [QSA,E=url_propre:$0,L]

Les breves

RewriteRule ^+[^/.]++?(.html)?$ spip.php?page=breve [QSA,E=url_propre:$0,L]

Les rubriques

RewriteRule ^-[^/.]±?(.html)?$ spip.php?page=rubrique [QSA,E=url_propre:$0,L]

les auteurs

RewriteRule ^[^/.]+?(.html)?$ spip.php?page=auteur [QSA,E=url_propre:$0,L]

Les sites

RewriteRule ^@[^/.]+@?(.html)?$ spip.php?page=site [QSA,E=url_propre:$0,L]

Les articles (en dernier car expression plus “large”)

RewriteRule ^[^/.]+(.html)?$ spip.php?page=article [QSA,E=url_propre:$0,L]

Fin URLs “propres” et “propres2”

###[/code]

J’ai regardé les logs SPIP rien de significatif… Je ne sais pas comment avoir accès aux logs Apache ?

Mon voisin a contacté OVH et ils lui ont filé la procédure pour récupérer des backups je vais remettre une sauvegarde de la semaine dernière et on verra bien

Merci pour votre aide en tout cas

Les logs Apache, c’est OVH qui va pouvoir te les fournir, vu que j’imagine que tu n’as pas accès à autre chose que ton serveur web sur ton ftp / ssh.

Pour le .htaccess, c’est plus ou moins celui de base. Ce que j’aimerai savoir c’est pourquoi du jour au lendemain ça ne fonctionne plus => vous êtes passés sous OVH récemment en fait ?

Je pense qu’il faut leur dire qu’il faut ajouter le contenu de ton fichier .htaccess, vu que tu dois pas avoir accès à celui qui est véritablement pris en compte par OVH.

Non le site est chez OVH depuis plusieurs années et les seuls changements sont de nouveaux articles SPIP. Mais bon si avec le backup ca ne marche toujours pas je serais sur que ca vient de chez OVH qui a changé quelque chose.

as-tu fait le test le plus simple ? renomme ou supprime ce .htaccess (normalement à la racine) et vas sur le site http://www.trisaleve.fr/
tu auras peut être des tonnes d’erreurs ou pas, mais plus de 500 et tu seras sûr que c’est bien le .htaccess qui foire.
le module de réécriture des url, c’est de base normalement, mais y as tu droit ? tu dois consulter ta conf Apache et regarder si RewriteEngine est autorisé, et l’extension correspondante chargée.

#LoadModule rewrite_module modules/mod_rewrite.so [...] #AddModule mod_rewrite.c

Bon remettre la sauvegarde de la semaine dernière n’a rien changée

Silicium je vais tester ton idée

Merci beaucoup

c’est clair que c’est le .htaccess. quand je veux accéder à la partie rédacteur de ton site, j’ai une page qui marche. hors c’est le dossier écrire qui contient probablement un autre .htaccess. d’ailleurs tu confirmes que le dossier ecrire a son .htaccess ? probablement que OVH a changé sa conf apache récemment, si tu n’as rien fait du tout depuis des mois sur ce site hormis publier.

dernier conseil, tu es j’imagine en serveur mutualisé, donc va poster à la racine du site un fichier phpinfo.php qui contient

<?php phpinfo(); ?>

tu vas visiter la page avec ton navigateur, t’enregistres le rsultat, tu vires le fichiers du ftp (pour sécurité). tu regardes la conf php et apache.

Je n’ai trouvé que deux fichiers .htaccess un dans tmp et un dans config. Je les ais supprimés. Aucun effet.

Ensuite j’ai la manip avec Phpinfo pour voir la conf apache et php j’obtiens http://www.trisaleve.fr/phpinfo.php

J’ai refais une tentative avec le htaccess.txt renommé en .htaccess en faisant quelques modifs rien n’y fait.

Si je comprends bien le message de silicium je n’ai pas accès au bon .htaccess.

Dans la conf apache/php il n’est pas fait mention de rewrite engine

Merci pour le coup de main, ce qui est frustrant c’est que le majorité du site demeure accessible

tu as forcément un .htaccess dans / ou /www puisque erreur 500 (je ne sais pas le nom d’accueil de ton répertoire pour le dépôt des pages).
c’est celui de ton SPIP, et quand je vois ta conf phpinfo, tu n’as pas droit au mod_rewrite. donc vire le .htaccess ou alors remplace RewriteEngine On par RewriteEngine Off (le résultat sera le même).

pour creuser la question si ça t’intéresse, j’ai trouvé cette ressource http://www.expreg.com/rewrite.php et http://ubuntuforums.org/showthread.php?t=1054687
à la rigueur si tu me fais confiance tu me balance l’accès FTP par MP, je me loggue et je fais kk tests sans rien casser.

pour confirmer mes soupçons tu peux copier-coller ici quelques urls vers des articles quelconques du site que tu utilises d’habitude (tes articles préférés)

J’ai fais le test décrit sur ce lien http://www.expreg.com/rewrite.php

et on voit bien que le rewriteengine fonctionne, tu confirmes ? www.trisaleve.fr/test.html

J’ai bien vérifier je n’ai plus aucun .htaccess qui traîne dans ce que je peux consulter sur le ftp

Je continue mes recherches et merci encore

ok je confirme, ça marche. bizarre que le mod_rewrite n’apparaisse pas dans la conf phpinfo. j’ai pas d’autres explications à ton 500, j’y réfléchis et je t’envoie la facture :slight_smile:

question : tu es en serveur mutualisé ou dédié ?

Mutualisé je pense

Je continue mon aventure

Alors pour essayer de comprendre ce qu’il se passe j’ai téléchargé le site et je l’ai configuré en local avec un easyphp. Import de la base de donnée. Le site tourne bien en local pas de soucis.
J’ai juste plein de messages d’erreurs deprecated de PHP. Pourtant j’ai mis le niveau d’erreur sur error_reporting = E_ALL & ~E_DEPRECATED. Je ne devrais pas les voir. A part ca aucune erreur. Toute manière je ne pense pas que le problème vienne de là car OVH est en PHP4 et moi en local je suis en PHP 5.3 donc c’est normal ces messages.

Je ne pense pas à un problème de PHP…

Bref je ne comprends vraiment pas pourquoi le site fonctionne bien en local et pas chez OVH.

donc tout est OK chez toi. ce qui confirme un problème chez OVH, et côté Apache. tu as contacté le service clients ?

Oui mais leurs réponses ne sont pas d’une grande aide

Problème interne à notre site Trisalève:
voir contenu du fichier:
index. php ou spip-php

Votre fichier /www/spip.php fait appel à un dossier : include_spip(‘inc/headers’);

Il semblerait que le dossier inc/ ne soit pas présent sur votre hébergement.

et c’est tout

je vais revenir vers eux merci de l’aide