3 votes

Les liens dans Wordpress ne fonctionnent pas sur Google Cloud Platform

Cela fait trois semaines que je me frappe la tête contre le mur pour essayer de faire fonctionner les paramètres de permalien de Wordpress sur la plateforme Google Cloud. Voici un résumé rapide de ce que j'ai, de ce que j'essaie de faire et de ce que j'ai déjà essayé.

J'ai deux serveurs sur GCP qui rencontrent le même problème.

Serveur 1 (serveur migré) Ce serveur contient quatre sites Wordpress que j'ai fait migrer depuis un fournisseur d'hébergement mutualisé. Ces quatre sites ont des problèmes si je n'utilise pas le premier paramètre de la section Permalinks dans les paramètres de WordPress. Système d'exploitation : Debian 8 Site web : www.example.com

Serveur 2 (Google Deployed) Ce serveur est un déploiement unique de Wordpress qui a été lancé en utilisant le déploiement d'instance wordpress pré-construit de Google. Système d'exploitation : Debian 8 Wordpress : 4.8

Le problème des Permalinks : Dans Wordpress -> Paramètres -> Permalinks -> Si je choisis "Plain - http://example.com/?p=123 " Je peux charger la page d'accueil du site et naviguer vers toutes les sous-pages. Si je choisis autre chose que "Plain", que ce soit "Day and name", "Month and name", "Numeric", "Post name" ou "Custom Structure", je ne peux charger que la page d'accueil du site et je suis incapable de charger les autres pages. Lorsque j'essaie de charger l'une des autres pages, je reçois l'erreur suivante :

Non trouvé L'URL demandée /loopstats/ n'a pas été trouvé sur ce serveur. Apache/2.4.10 (Debian) Server at example.com Port 80

Maintenant il est le vrai kicker, Server 2 (GCP déployé), que j'ai utilisé le Google Deployment Manager pour lancer l'instance Wordpress, le paramètre par défaut pour Permalinks est l'option "Custom" avec le slug suivant :

/index.php/%year%/%monthnum%/%day%/%postname%/

Encore une fois, si j'utilise N'IMPORTE quel autre paramètre que ce lien personnalisé, je ne peux charger que la page d'accueil et TOUS les autres liens sont rompus.

Lorsque je reviens au serveur 1 (serveur migré) et que je saisis ce slug dans le champ personnalisé, tout fonctionne sur le serveur 1. Mais cela ne fonctionne pas pour moi, car je me retrouve avec ces liens incroyablement méchants qui contiennent index.php. (On m'a dit que c'est terrible pour le référencement).

Des choses que j'ai essayées :

  1. Des jours à googler. J'ai des questions sur le site principal de Wordpress, sur certains sites de plugins, sur Reddit, et je n'arrive jamais à rien.

  2. Apache2 Rewrite : D'après différents sites que j'ai lus en ligne, j'ai constaté que Apache Rewrite peut être le problème ici s'il n'est pas activé. Je me suis assuré qu'il était activé sur les deux sites.

  3. .htaccess fichier : J'ai détruit le .htaccess sur le serveur 1 et l'a remplacé par le fichier .htaccess du serveur 2 (Google Deployed). Cette opération n'a apporté aucun avantage à la structure des permaliens, si ce n'est que je peux désormais utiliser le slug personnalisé du serveur 2. ( /index.php/%year%/%monthnum%/%day%/%postname%/ )

C'est le contenu de mon actuel .htaccess sur les deux serveurs :

# 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
# END Wordpress

Est-ce que quelqu'un a une idée de ce que je fais mal ? Je veux pouvoir utiliser de meilleurs permaliens et me débarrasser de ces liens extrêmement désagréables.

0 votes

Avez-vous rechargé/redémarré Apache ?

0 votes

Oui, j'ai essayé de recharger Apache plusieurs fois. Maintenant, voici quelque chose d'intéressant - j'ai récemment démarré une instance de Wordpress en utilisant un déploiement Bitnami prémâché... et bizarrement les déploiements Bitnami n'ont pas le même problème. Comment puis-je déterminer quels sont les différents paramètres entre les deux instances ?

0 votes

Veuillez consulter le lien suivant, il a fonctionné pour moi randomwordpresstips.wordpress.com/2013/05/10/

8voto

Utiliser ssh : modifier votre apache .conf

sudo nano /etc/apache2/apache2.conf

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride ALL <----(edit from none)
        Require all granted
</Directory>

...et ensuite redémarrer apache2 en utilisant :

sudo service apache2 restart

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X