montée de version: 5-6 à 5-8-4

JoséJosé Member
décembre 2020 modifié dans Entraide

Bonjour , pour monter la version, j'ai bien désactivé les plugins, je suis passé sur le thème par défaut.

La montée de version s'est bien passée sauf que les liens entre les pages sont tout chamboulé !

mes liens s'écrivent : href="?article5/

maintenant je dois écrire le lien avec le nom de la page

href="?article5/parthenay-l-archeveque

idem pour lien vers pages statiques!

Est ce parce que j'avais choisi l'option Activer la réécriture d'URL = NON ?

Est ce que je vais devoir ré-écrire les liens des 180 pages ?

merci de votre aide. José

Réponses

  • HarukaHaruka PluXml Project Manager

    Bonjour,

    Sur le site demo ça passe :
    https://demo.pluxml.org/?article1/ => https://demo.pluxml.org/index.php?article1/lorem-ipsum-dolor-sit-amet
    https://demo.pluxml.org/?static1/ => https://demo.pluxml.org/index.php?static1/statique-1

    Est-ce que vos liens redirigent vers la page d'accueil ?
    Est-ce que vous avez essayé en activant la réécriture d'url ?

  • Merci de regarder cette question
    sans la ré-écriture d'url tous les liens fonctionnent bien, ils s'écrivent

    https://armorial.cc-parthenay-gatine.fr/index.php?article5/parthenay-l-archeveque
    https://armorial.cc-parthenay-gatine.fr/index.php?static3/atelier-blasons
    

    avec la ré-ecriture les liens s'écrivent

    https://armorial.cc-parthenay-gatine.fr/article5/parthenay-l-archeveque
    

    et là cela ne fonctionne pas,
    avec firefox

    The requested URL was not found on this server.
    

    avec IE

    Page Web introuvable
    
      HTTP 404 
    
    
    Causes les plus probables :
    •Il se peut que l’adresse contienne une erreur de frappe.
    •Si vous avez cliqué sur un lien, il se peut qu’il soit obsolète.
    

    je ne peux pas non plus activer le plugin plxMyBetterUrls.

    Merci par avance

  • bazooka07bazooka07 PluXml Lead Developer, Moderator

    Qaund tu actives la ré-écriture d'urls, tu as à la racine du site un fichier .htaccess qui est créé ou modifié.
    Il faut que tu nous donnes son contenu.

    Mais d'après mon Firefox ton site est hébergé sur un serveur Nginx. Donc les fichiers .htaccess ne marcheront.
    Tu peux le vérifer en cliquant dans le menu d'administration sur l'entrée "Paramètres", puis "Informations".
    Fais nous une copie d'écran.

    Si c'est le cas, il faut modifier la configuration du "virtual host" sur le serveur Nginx si tu as les droits.
    Inspecteur de Firefox

  • merci ,
    j'ai contacté l'hébergeur du site. en attendant :
    1° voici le détail du panneau Informations

    PluXml version 5.8.4 (encodage UTF-8)
    
        Version de PHP : 7.2.24-0ubuntu0.18.04.7
        Apache
    
        ? ../../ n'est pas accessible en écriture ou n'existe pas
        ? ../../data/configuration/ est accessible en écriture
        ? ../../data/configuration/plugins/ est accessible en écriture
        ? ../../data/articles/ est accessible en écriture
        ? ../../data/commentaires/ est accessible en écriture
        ? ../../data/statiques/ est accessible en écriture
        ? ../../data/medias/ est accessible en écriture
        ? ../../plugins/ est accessible en écriture
        ? ../../themes/ est accessible en écriture
        ? Module apache de réécriture d'url mod_rewrite disponible
        ? Bibliothèque GD installée
        ? Bibliothèque XML installée
        ? Fonction d'envoi de mail disponible
    

    2° le fichier .htaccess n'apparaît pas à la racine du site ( FTP Filezilla ) avec ou sans ré-écriture . Pourtant quand je désactive la ré-écriture il me prévient qu'un fichier est présent:

    Activer la réécriture d'URL : NON
    Attention un fichier .htaccess est déjà présent à la racine de votre PluXml. En activant la réécriture d'url ce fichier sera modifié
    

    je n'ai pas accès à son contenu

  • bazooka07bazooka07 PluXml Lead Developer, Moderator

    Bonjour,

    Crée sur ton PC un fichier nommé ".htaccess" avec le contenu ci-dessous et téléverse le à la racine de ton site avec Filezilla :

    Options -Indexes
    
    <Files ".htaccess">
        Order Allow,Deny
        Deny from all 
    </Files>
    
    <Files "config.php">
        Order Allow,Deny
        Deny from all 
    </Files>
    

    Fais une copie d'écran avec FIlezilla pour vérifier les droits en écriture et le nom du user et du group

  • le fichier .htaccess est bien à la racine
    copie d'écran Filezilla:

    Filezilla

    les droits 777 semblent indiquer qu'il est bien accessible , cependant il n'est pas modifié lorsque j'active ou désactive la réécriture d'url. en local , le fichier .htaccess est modifié à chaque fois

  • bazooka07bazooka07 PluXml Lead Developer, Moderator

    777 ne sont pas les bons droits. Cela signifie que .htaccess est exécutable et que tout le monde peut écrire devant. Ce n'est pas très sécure. On devrait avoir la même chose que pour le fichier feed_old.php ou "-rw-rw-r--".
    Mais le problème doit être ailleurs.
    A quoi ressemble le fichier .htaccess avec ou sans activation de la ré-écriture d'urls ?
    Bien sûr il faut faire ces manips avec plxMyBetterUrls désactivé pour l'instant.
    Filezilla permet d'éditer un fichier distant. Rajoute dans .htaccess une ligne de commentaire et enregistre. La ligne doit commencer par le caractère "#".

  • plxMyBetterUrls est toujours désactivé.
    La ré-écriture d'url est activée

    Voici le fichier .htaccess modifié en ligne et enregistré via Filezilla

    Options -Indexes
    # Commentaire
    <Files ".htaccess">
        Order Allow,Deny
        Deny from all 
    </Files>
    
    <Files "config.php">
        Order Allow,Deny
        Deny from all 
    </Files>
    

    Si je désactive la ré-écriture d'url : le fichier .htaccess n'est pas modifié et les liens vers les pages statiques sont alors opérationnels

  • Vu avec l'hébergeur du site : tout est accessible en écriture. Donc de ce côté, pas souci.

    1° pour les liens internes vers des articles : pas de souci à condition d'écrire le lien avec l'url complet

    href="?article81/famille-eschallard"
    
    

    2° pour les pages statiques appelées par le menu , cela ne fonctionne pas ( avec ré-écriture d'url ). voici la ligne de header.php que je n'ai pas modifiée

    <?php $plxShow->staticList($plxShow->getLang(''),'<li class="#static_class #static_status" id="#static_id"><a href="#static_url" title="#static_name">#static_name</a></li>'); ?>
    
    

    le lien ne fonctionne pas pour les pages statiques anciennes ou nouvellement créées

  • avec ré-écriture url activée, lorsque j'appelle une page statique avec le menu, la page est introuvable ( url not found ) et l'adresse qui s'affiche est

    https://armorial.cc-parthenay-gatine.fr/static14/nouvelle-page-test
    

    si je viens ajouter le " ? " dans la fenêtre du lien

    https://armorial.cc-parthenay-gatine.fr/?static14/nouvelle-page-test
    

    je suis bien dirigé sur la nouvelle page.

    est ce que j'aurais fait une mauvaise modification quelque part ?

  • bazooka07bazooka07 PluXml Lead Developer, Moderator

    La page est introuvable parce que ton fichier .htaccess n'est pas bon.

    Sur ton site, fais une installation complète de PluXml dans un nouveau dossier et active la ré-écriture d'Urls.
    A la racine de ce dossier tu dois avoir un fichier .htaccess qui ressemble à cela :

    # BEGIN -- Pluxml
    Options -Multiviews
    <IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /PluXml/
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-l 
    # Réécriture des urls
    RewriteRule ^(?!feed)(.*)$ index.php?$1 [L] 
    RewriteRule ^feed\/(.*)$ feed.php?$1 [L] 
    </IfModule>
    # END -- Pluxml
    

    Si ton nouveau dossier s'appelle mon-dossier tu auras "RewriteBase /mon-dossier/PluXml/".
    Je viens de refaire une installation neuve sur mon PC pour vérifier.

  • Merci bazooka07.

    En rechargeant PluXml, et en activant la ré-écriture d'URL , il se crée le fichier .htaccess
    mais dans le panneau informations j'ai le message à la première ligne

    ✗ ../../ n'est pas accessible en écriture ou n'existe pas
    

    je suppose qu'il s'agit du .htaccess

    Par Filezilla , je constate qu'il est vide et je lui verse le contenu que tu m'indiques.

    j'ai une question : Que doit contenir la ligne en remplacement de /PluXml/

    RewriteBase /PluXml/
    

    sachant que le site est sur le serveur et non pas dans un répertoire.

    José

  • bazooka07bazooka07 PluXml Lead Developer, Moderator
    RewriteBase /
    

    Il semble que Pluxml n'a pas de droit en écriture dans le dossier racine du site.
    Avec Filezilla, peux-tu descendre d'un répertoire plus bas et vérifier les droits en écriture du dossier racine de ton site ?
    Cela dépend un peu du bon vouloir de ton hébergeur.

  • Un grand merci à P3ter et à Bazouka
    je devrais croiser les doigts, mais il semble que tout fonctionne bien , y compris mybetterurl.
    il y avait quelques fausses pistes

    • des liens internes que j'avais mal rédigés
    • un fichier htaccess qui jouait à cache-cache...
      mais à force de tests la question est résolue.
      Super PluXml
      José
Connectez-vous ou Inscrivez-vous pour répondre.