J'utilise le thème Thesis avec mon installation multisite WordPress. J'ai également modifié les paramètres de permalien des paramètres de super administrateur pour supprimer /blog/ du chemin.
Mais maintenant mes liens de menu sont cassés. La structure permalien est maintenant /% postname%/ et mes pages ont les liens suivants: mydomain.com/about/, mydomain.com/contact/ etc.
Lorsque j'essaie de naviguer sur ces pages, cela me donne une erreur 404.
Quelqu'un peut-il m'aider s'il vous plaît sur la façon de résoudre ce problème?
Merci.
Quelques informations supplémentaires
J'ai vérifié les journaux d'erreur et je ne comprends pas pourquoi les instructions de journal suivantes apparaissent lorsque j'essaie d'accéder aux pages (si cela permet de résoudre le problème)
[Thu Mar 10 12:29:18 2011] [error] [client xxx.xxx.71.55] File does not exist: /var/www/html/about, referer: http://mydomain.com/
[Thu Mar 10 12:32:44 2011] [error] [client xxx.xxx.71.55] File does not exist: /var/www/html/contact, referer: http://mydomain.com/
Ne devrait-il pas rechercher les fichiers dans le dossier wp-content/themes/thesis?
INFORMATIONS COMPLEMENTAIRES
Le contenu de .htaccess est ici (identique à celui de Paramètres réseau)
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
De plus, j'utilise les étapes ici pour utiliser Thesis avec une installation multisite.
La solution publiée ici a résolu le problème.
Les liens fonctionnent comme prévu maintenant même lorsque j'utilise des structures personnalisées à permalien!
Est-ce que vous testez l'installation de WordPress sur votre propre serveur ou sur un hôte Web partagé? Je pose la question car j'ai récemment eu un problème similaire avec une installation WordPress sur mon serveur de développement local. Pour moi, le problème était dans ma configuration Apache.
Si l'installation de WordPress est sur votre serveur, assurez-vous que le module Apache mod_rewrite
est activé. De plus, assurez-vous que AllowOverride
est défini sur All
plutôt que None
dans votre fichier de configuration Apache, sinon les règles de réécriture de votre fichier .htaccess
seront entièrement ignorées.
Vous pouvez consulter ce message pour plus d'informations, je m'excuse si cela ne s'applique pas à votre situation!
Cela ressemble à un fichier .htaccess cassé. Moi aussi, j'ai supprimé/blog/comme chemin d'accès permanent, mais cela n'avait/ne devrait pas avoir d'impact majeur sur l'utilisation du site. Le journal des erreurs est correct, car WordPress s'ouvre par défaut mydomain.com/about/, puis place le contenu de la page dans le style du thème.
Je dirais qu'il y a deux raisons hautement possibles:
Dès le début de l'installation de WPMS (WordPress Multisite), il vous est demandé de faire trois choses:
(tout ce code est visible sur Admin Réseau -> Paramètres -> Configuration du réseau). Cela couvre l'installation standard de WPMU, mais au moins, selon mon expérience, ne crée pas de mappage de domaine fonctionnel. Donc, en plus de l'installation de WPMU Vanilla, j'ai suivi le tutoriel d'Otto sur la cartographie de domaine WPMS 3.0 .
L’un des aspects importants de ce didacticiel est l’installation de deux plugins: Domain-mapping et Sunrise. Il s’agit en réalité de vestiges de WPMU (avant l’intégration de Multisite dans Wordpress), mais ils sont mis à jour pour les besoins de Domain-Mapping. Je ne sais pas vraiment si Wordpress dispose par défaut d'un système de mappage de domaine intégré à la version 3.1, mais je suis toujours dépendant de ces deux plug-in pour utiliser des domaines avec mon WPMS.
Cela vaut la peine de dire que j'ai récemment rencontré un problème lorsque tous les liens de mon site commençaient à 404 résoudre le problème en supprimant htaccess et en refaisant tous les paramètres de permalien. Avez-vous essayé ça?