[Résolu] Passage de URL PAges à URL Propres

Bonjour

Sous SPIP 4.4.7 j’ai changé URLs Page en URLs Propres. J’ai placé le fichier de SPIP .htaccess à la racine du site :

image

Et depuis ce changement, aucun lien ne fonctionne nulle part, que ce soir pour les rubriques ou les articles.

Où est mon erreur ?

Bien cordialement.

Bonjour,
en attendant des compétences, je suppose que vous avez vidé le cache et (à moins que votre site soit en http) vérifié que le nouveau fichier htaccess comporte la redirection vers https ?
Clt

Oui j’ai vidé le cache. Voici le fichier .htaccess :

##############################################################
# Fichier .htaccess                               SPIP v 4.4 #
#                                                            #
# Permet de controler les URLs et la version de php utilisee #
# Compatible avec les URLs 'html', 'propres' et 'propres2'   #
#                                                            #
# 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

# Calcule automatiquememt le RewriteBase (qui permet de faire fonctionner
# les belles URLs). De la sorte, un meme site peut etre affiche en racine
# ou dans un sous repertoire sans devoir modifier la ligne RewriteBase.
RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$
RewriteRule ^(.*) - [E=BASE:%1]

# En alternative aux 2 lignes precedentes (a commenter dans ce cas),
# vous pouvez indiquer un RewriteBase specifique
#RewriteBase /

###


################ REGLAGES PERSONNALISES ######################
# Inscrivez ci-dessous vos reglages supplementaires



############# GESTIONS DES ACCES FICHIERS #####################
###

# bloquer les acces aux fichiers caches (.svn, .git, etc)
RewriteCond %{REQUEST_URI} !^/.well-known/
RewriteRule "(^|/)\." - [R=404,NC,L]
# bloquer les informations Composer
RedirectMatch 404 ^/composer\.(json|lock|phar)$

# Si le fichier ou repertoire demande existe
# ignorer toutes les regles qui suivent
<IfModule mod_headers.c>
	RewriteCond %{REQUEST_FILENAME} -f
	RewriteRule \.pdf$ - [skip=100]
	RewriteCond %{REQUEST_FILENAME} -f
	RewriteRule ^IMG/ - [env=sandbox:sandbox,skip=100]
	Header add Content-Security-Policy "sandbox" env=sandbox
</IfModule>
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule "." - [skip=100]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule "." - [skip=100]
#
###

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

###
# Compatibilite avec les URLS "html" (pour transition sympa)
# voir fichier ecrire/urls/html.php
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]

# Fin compatibilite
###

###
# ping http://site/1234 => article1234

RewriteRule ^([1-9][0-9]*)$     spip.php?action=redirect&type=article&status=301&id=$1 [QSA,L]

#
###

###
# APIs
# http://site/xmlrpc.api
# http://site/atom.api/articles/1234
# https://site/offline.api.sw.js

RewriteRule ^(ecrire/)?([\w]+)\.api([/.](.*))?$ spip.php?action=api_$2&arg=$4 [QSA,L]

# Fin des APIs
###

###
# URLs "propres", "propres2", "libres", "arbo"

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

# Fin URLs "propres" et "propres2"
###

###
# Divers

###
# Fichiers "standards" (si absents de la racine)
#
RewriteRule ^robots[.]txt$      spip.php?page=robots.txt [QSA,L]
RewriteRule ^favicon[.]ico$      spip.php?page=favicon.ico [QSA,L]
RewriteRule ^sitemap[.]xml$      spip.php?page=sitemap.xml [QSA,L]
##

# Favicon pour itrucs
# Si vous avez le plugin filtres_images et qu'une méthode de retouche a été configurée, vous pouvez décommenter la ligne ci-dessous.
#RewriteRule ^apple-touch-icon(-(\d+x\d+))?(-precomposed)?[.]png$	spip.php?page=apple-touch-icon.png&size=$2 [QSA,L]


<IfModule mod_expires.c>
	ExpiresByType text/html  "access plus 0 seconds"
</IfModule>

#################################
# gestion des erreurs 404
# voir https://www.spip.net/fr_article3226.html
# Pour que le serveur http renvoie les erreurs 404 vers SPIP, supprimer le '#'

# ErrorDocument 404 /spip.php?page=404

#
###

Je ne sais pas comment voir si ce fichier htaccess comporte la redirection vers https.

Bonjour
perso, on m’avait fait mettre cela dans la zone de personnalisation

################ REGLAGES PERSONNALISES ######################
# Inscrivez ci-dessous vos reglages supplementaires
RewriteCond %{SERVER_PORT} 80
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

Clt

Est-ce que ton hebergeur deja supporte les .htaccess ? tu es bien sur un serveur apache ?

Je ne sais pas. Je suis chez Haisoft. J’ai créé un ticket pour leur demander.

Ils m’ont confirmé supporter les fichiers .htaccess et avoir un serveur Apache. J’ai vider le cache, restaurer la base sasn erreur. Puis réessayer les URLs propres, mais cela bne fonctionne toujours pas.

Haisoft m’a répondu « J’ai ajouté le contenu du fichier htaccess.txt dans le fichier .htaccess, et votre site est toujours accessible. » Je suis passé sous URLs Propres et maintenant cela fonctionne.
Merci.

La question est donc, puisque c’est exactement ce que la documentation dit de faire, qu’est-ce que tu avais fait différemment ?

Je n’ai rien fait, je lui avais envoyé le fichier .htaccess nommé « htaccess.txt » c’est Haisoft qui m’a dit « J’ai ajouté le contenu du fichier htaccess.txt dans le fichier .htaccess, et votre site est toujours accessible. »

···

Je ne sais pas s 'il a modifié le fichier .htaccess, mais le l’avait bien nommé et placé à la racine du site.
Bien cordialement,

Christian

Il serait bon que tu comprennes ce qui a été fait. Sans cela, tu risques d’être toujours dépendant.

Oui, quelle différence entre le .htaccess que tu avais mis avant (qui ne fonctionnait pas) et celui mis en place par Haisoft ?

Je dirais que sans doute Christian n’avait pas changé le nom du fichier : de « htaccess.txt » en « .htaccess »…