2010-07-17 25 views
1

J'utilise Simple Mailing List (http://www.notonebit.com/projects/mailing-list). C'est une bonne liste de diffusion, mais pas de zone d'administration. Vous devez donc utiliser .htaccess/.htpasswd pour protéger le dossier/mail/admin..htaccess interfère avec .htaccess imbriqué/.htpasswd?

Cependant, mon site a WordPress installé dans le dossier racine du site. WordPress crée .htaccess pour les permaliens personnalisés. Et pour une raison quelconque, cela interfère avec le .htaccess de mon/mail/admin /.

Lorsque je supprime le fichier WordPress .htaccess, ma protection par mot de passe fonctionne correctement sur/mail/admin. Cependant, quand WordPress .htaccess est présent et que je charge/mail/admin dans le navigateur, on ne me demande jamais de mot de passe et je vois une page WordPress 404 qui dit "page non trouvée ..."

mes fichiers ... .htaccess WordPress (situé dans le dossier racine):

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

.htaccess Liste de diffusion (situé dans/mail/admin):

AuthName "Restricted Area" 
AuthType Basic 
AuthUserFile /home/myUsername/public_html/mySndSite/mail/admin/.htpasswd 
require valid-user 

Toute idée de ce qui est à l'origine du conflit, et comment je peux le résoudre? J'y ai travaillé pendant des heures. Votre aide est tres apprecie.

Merci Vous

EDIT: trouvé une solution!

J'ai trouvé une solution sur un blog Joomla. Je ne sais pas comment, mais cela fonctionne ... LOL :)

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/

RewriteRule ^index\.php$ - [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|#.*|\?.*|/[^.]*)$ [NC] 
RewriteRule ^(.*) /index.php [L] 
</IfModule> 
+0

Merci beaucoup! Votre solution Joomla a parfaitement fonctionné. J'ai passé des heures à essayer de comprendre cela. –

Répondre

0

Vous pouvez essayer de définir explicitement une condition que la demande URI pas correspondre à l'URL pour le script de messagerie. Cela devrait empêcher le réécriture d'entrer dans la page d'administration de courrier.

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_URI} !mail 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 
+0

Salut, merci pour la suggestion. J'ai essayé cela et ça ne semble pas fonctionner. Dit toujours "page introuvable" lorsque j'essaie de le charger. Mais quand je supprime la dernière ligne, 'RewriteRule. /index.php [L] ', le passwd fonctionne à nouveau. Hmm, d'autres idées? – codemonkey613

0

Je pense qu'il doit y avoir quelque chose d'autre qui se passe ici que nous ne pouvons pas voir. Ce code Wordpress .htaccess empêche déjà la réécriture d'URL lorsque vous essayez d'accéder à un fichier ou un répertoire existant sur le serveur, ce qui devrait être vrai dans ce cas. Y a-t-il d'autres fichiers .htaccess impliqués ou des plugins installés dans Wordpress impliquant des réécritures? En outre, does/mail/admin/travail lorsque vous supprimez votre fichier .htaccess qui nécessite un mot de passe? Vous pouvez essayer, par exemple, de créer des fichiers texte vierges dans le répertoire/mail/admin/et dans un dossier complètement nouveau dans le répertoire racine, et de voir si vous pouvez y accéder sans problème - vous pouvez affiner le problème est.

+0

Salut. Lorsque j'ai supprimé le fichier .htaccess pour WordPress (dans le répertoire racine du site Web), la protection par mot de passe fonctionne correctement (dans/mail/admin). J'ai d'abord réduit le problème au fichier .htaccess de WordPress, puis je l'ai réduit à cette ligne: RewriteRule. /index.php [L] ... Les personnes utilisant Joomla ont rencontré le même problème, et ils ont trouvé une solution qui fonctionne (voir mon article original pour le modifier). Merci pour l'aide. – codemonkey613