Aller au contenu
xpatval

.htaccess

Noter ce sujet :

Recommended Posts

Bonjour,

J'essaie actuellement de tester l'utilisation du .htaccess et de son accolyte le .htpasswrd (oui, j'ai lu l'article sur ces fichiers ici-même).

Seulement voilà:

Bossant avec easyphp 1.7, ces deux fichiers sont placés à la racine du site.

Dans le .htaccess, j'indique ceci:

ErrorDocument 404 /err_404.htm

ErrorDocument 403 /err_404.htm

ErrorDocument 500 /err_404.htm

Lors de la simulation d'une des trois premières erreurs, la page err_404 n'est jamais affichée (elle est située elle aussi à la racinde du site).

Si j'ajoute cela:

AuthUserFile /.htpasswrd

AuthGroupFile /dev/null

AuthName "Accès protégé"

AuthType Basic

<Limit GET POST>

Require valid-user

</Limit>

j'ai bien la demande d'autentification (donc le .htaccess est lu), mais le mot de passe reste invalide (pourtant copié-collé de l'article d'ici, avec son cryptage).

Qu'est-ce qui se passe ? :1eye:

D'un coté, sans l'autentification, j'ai l'impression que .htaccess n'est pas reconnu (pourtant enregistré tel que .htaccess, et non htaccess.txt...), et d'un autre coté (avec l'autentification), il semblerait que si, mais cela ne fonctionne pas pour autant !!

Pouvez-vous me conseiller ?

Merci,

xpatval

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut xpatval, et bienvenue à bord !

Le problème avec un serveur Apache tournant sous Windows vient de l'arborescence différente du système de fichier.

Les valeurs que tu donnes sont typiques à Unix/Linux, par exemple le fichier /dev/null (fichier spécial) qui n'existe pas sous windows.

Tu peux donc laisser tomber cette ligne qui ne sert à rien.

Le chemin donné pour AuthUserFile doit être un chemin complet depuis le racine du serveur, et non la racine du site ;)

Dans le cas de Windows, cela sera plutôt du genre:

AuthUserFile d:\repertoire\.htpasswd

Dan

Partager ce message


Lien à poster
Partager sur d’autres sites

Ben, oui , mais...non quand au résultat

J'ai bien entendu modifié le path, (concernant la demande d'autentification), mais je me retrouve avec une erreur 500 maintenant, et sans demande de password !!!

voici le contenu du .htaccess:

ErrorDocument 500 C:\Documents and Settings\pc\Mes documents\sites\admin_valart\err_404.htm

ErrorDocument 403 /err_404.htm

ErrorDocument 404 /err_404.htm

AuthUserFile C:\Documents and Settings\pc\Mes documents\sites\admin_valart\.htpasswrd

AuthGroupFile /dev/null

AuthName "Accès protégé"

AuthType Basic

<Limit GET POST>

Require valid-user

</Limit>

Y voyez-vous une quelconque erreur ?

xpatval

Partager ce message


Lien à poster
Partager sur d’autres sites

Pour moi, le ErrorDocument est faux... il ne devrait y avoir que le AuthUserFile avec des chemins "à la windows"... et le AuthGroupFile ne sert à rien, autant le virer.

Dan

PS: il est aussi possible que les noms avec les espaces n'arrangent rien... :(

Partager ce message


Lien à poster
Partager sur d’autres sites

Je viens de tester chez moi, voici ce qui fonctionne:

ErrorDocument 500 /err_500.htm
ErrorDocument 403 /err_404.htm
ErrorDocument 404 /err_404.htm
AuthUserFile G:\www\.htpasswd
AuthName "Accès protégé"
AuthType Basic
<Limit GET POST>
Require valid-user
</Limit>

La racine de tous les sites web se trouve à G:\www\ c'est ce qui correspond au fichier de configuration Apache (httpd.conf).

Par contre, le .htpasswd ne doit pas contenir le mot de passe encrypté... il faut le laisser en clair. C'est une particularité de Apache sous Windows ;)

Dan

Partager ce message


Lien à poster
Partager sur d’autres sites

:huh:

En réponse à ta réponse, je viens aussi de tester avec ton code. Résultat:

Pas de résultat. C'est à dire que erreurs 404 ou 500 ou ce que l'on veut, pas de page personnalisée.

Quand au path d'accès au .htpasswd, il ne pose pas de problème, mais il n'y a pas d'authentification possible. Même avec un password non crypté.

Je viens d'aller voir dans le httpd.conf, à la directory associée au site, et le AllowOverride est à ALL.

Y aurait-il une particularité d'easyphp 1.7 sous windows XP pour traiter les .htaccess ?

:yoot: <= c'est ce que je suis en train de devenir ...

Partager ce message


Lien à poster
Partager sur d’autres sites

Bon, pour (me) répondre à l'un de mes deux problèmes:

Concernant la demande d'authentification: (toujours avec easyphp 1.7, sous windows XP):

le code correct est:

AuthUserFile "C:/monsite/.htpasswd" (chemin absolu + doubles quotes), avec password non crypté !

Par contre, malgré 36000 essais de chemins différents pour les gestions personnalisées d'erreurs tels que 404, 500 etc, je ne trouve pas la solution. De plus, il me semble étonnant qu'il faille placer les pages personnalisées d'erreur sous C:\Program Files\EasyPHP\www\, sachant que pour l'authentification, le .htpasswd (placé à la racine du site), est bien trouvé ...

xpatval

Partager ce message


Lien à poster
Partager sur d’autres sites
Guest azeitona

gérer les htaccess sur windows :down: je sais meme pas si ca se fait !

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

  • Contenu similaire

    • Par kevinjoseph
      Bonjour, j’ai un gros problème sur mon site Wordpress . Du jour au lendemain, mon site wordpress fais une redirection vers un autre site wordpress que j’ai crée ,sans que je touche à quoi que ce soit. Quand j’essai d’aller sur l’admin pour désactiver les plugins et voir d’où peut venir le problème. Impossible d’accéder, sa me redirige vers l’admin de l’autre site. Au final il est impossible que j’accède au site via (google, la bare de recherche, les favoris, l’admin…) pour voir ce qu’il fonction pas, j’ai juste accès au FTP. J'ai essayé de voir d'où pouvez venir ce bug en supprimant les plugins, le théme, mes derniers modifications, regarder sur le .htaccess si il y avais quelque par le nom de domaine de l'autre site écrit. Ca n'a rien changer, le site continue de ce rediriger automatiquement vers l'autre site. Si vous avez une idée d’où sa peut venir ou comment faire pour arranger ça et surtout comment éviter que sa ce reproduise. Sa m’aiderai beaucoup, merci d’avance.
      voici le code du .htaccess:
       
      # 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
      ~   Ludovic • 16:28    
    • Par leobk
      Bonjour,
       
      J'ai un sous-domaine www.fr.monsite.com dédié pour la réservation des vols
      j'ai redirigé récemment ce sous-domaine vers le site principal www.monsite.com et le nombre des erreurs 404 a explosé
      un nombre énorme d'URLs de type :
      www.fr.monsite.com/fr/vols/index?f_type=01&f_departure=TLS&f_destination=DJE&f_date_from=08/09/2013&f_date_to=22/09/2013&f_flexibility=3&f_paxs_adults=2&f_paxs_childs=0&f_paxs_infants=0
      redirigent vers :
      www.monsite.com/fr/vols/index?f_type=01&f_departure=TLS&f_destination=DJE&f_date_from=08/09/2013&f_date_to=22/09/2013&f_flexibility=3&f_paxs_adults=2&f_paxs_childs=0&f_paxs_infants=0
       
      L'URL de destination est biensur introuvable 404, puisque les variables utilisés dans les deux sites ne sont pas identiques
      Voici la structure d'URL si on fait une recherche de vol sur le site principal :
      https://www.monsite.com/fr/resa?depart=SXF&arrivee=NBE&aller=2017-11-10&retour=2017-11-30&adultes=1&enfants=1&bebes=0&departureDateTime_D=&arrivalDateTime_D=&departureDateTime_R=&arrivalDateTime_R=&fareGroupName=&fareGroupName_R=&sens=2&currency=EUR&airline=&flightNumber=&flight=&flight_retour=&webview=0&felxibilite=2
       
       
      existe-il un moyen pour rediriger l'ensemble des URLs dynamiques du sous-domaines vers une URL statique du domaine principale (autre que l'accueil)?
       
       
    • Par PieceMobile
      Bonjour,



      J'espère que vous allez tous bien.



      Auriez vous une solution pour rediriger ( via une règle htaccess par exemple ) :



      http://www.mon-site.com/blabla.html?ps_mobile_site=1



      vers : http://www.mon-site.com/blabla.html



      A mon avis, s'agissant d'un paramètre d'URL, de ce que j'ai cru comprendre -a mon petit niveau- c’était pas possible, mais ça me dépannerai pas mal si l'un d'entre vous avait une idée.



      Merci d'avance





    • Par aurelien59
      Bonjour, Je me permet de poster ce problème sur ce forum en plus de l'avoir posté sur un autre. Le problème survient sur un site codé en dur. Depuis plusieurs mois après la mise en place de redirection, je rencontre un problème. La redirection a été mise en place pour rediriger simplement les pages ayant un underscore vers un tiret. Par exemple page_1.php vers page-1.php Dans Google webmasters tools, zone "Exploration", > Erreurs d'exploration > le nombre des URL non suivies à augmenter de manière considérable sur ordinateurs et smartphone.

      Voici un exemple de page contenant l'erreur : page-1.php/page-a.php (alors que la page correcte est page-1.php, la page page-a.php est présente sur le site en racine). Lorsque je clic sur l'url d'erreur, dans l'onglet "Référencée sur". Les url qui apparaissent sont : http://www.monsite.fr/page-2.php/page-b.php'>>http://www.monsite.fr/page-2.php/page-b.php et http://www.monsite.fr/page-2.php/page-c.php'>>http://www.monsite.fr/page-2.php/page-c.php (non indexés sur Google). Voici l'extrait du .htaccess ErrorDocument 404 http://www.monsite.fr/404.phpRewriteEngine onRewriteCond %{HTTP_HOST} ^monsite.fr$RewriteRule ^(.*) http://www.monsite.fr/$1 [QSA,L,R=301]RewriteRule ^([^_]*)_([^_]*)$ /$1-$2 [L,R=301]RewriteRule ^(.*)\.php/$ http://www.monsite.fr/$1.php[L,R=301]RewriteRule ^(.*)\.php/(.*)\.php$ http://www.monsite.fr/$1.php[R=301]RewriteCond %{REQUEST_FILENAME} -s [OR]RewriteCond %{REQUEST_FILENAME} -l [OR]RewriteCond %{REQUEST_FILENAME} -dRewriteRule ^.*$ - [NC,L]RewriteRule ^.*$ /404.php [NC,L] Merci beaucoup pour votre aide.
×