Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 13/08/2015, à 16:45

ggl082

Apache pb lecture .htaccess

Bonjour à tous,

   Je sais que cette question a était largement posée, j'ai pas mal lu de réponses à ce sujet, fait beaucoup d'essais et pourtant, toujours rien. J'ai monté un serveur Ubuntu 14.04, LAM, phpmyadmin.... Tout cela sur mon réseau local uniquement à des fins de test donc pour l'instant pas de problème de sécurité. J'essaye de faire lire le fichier .htaccess(placé à la racine de monsite) par Apache sans résultat.

  Voici une partie du fichier apache2.conf

<Directory />
    Options FollowSymLinks
    AllowOverride all
    Require all denied
</Directory>

<Directory /usr/share>
    AllowOverride all
    Require all granted
</Directory>

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride all
    Require all granted
</Directory>

#<Directory /srv/>
#    Options Indexes FollowSymLinks
#    AllowOverride None
#    Require all granted
#</Directory>

<Directory "/usr/share/phpmyadmin/">
    Options None
    AllowOverride none
    Order allow,deny
    Allow from all
</Directory>

# AccessFileName: The name of the file to look for in each directory
# for additional configuration directives.  See also the AllowOverride
# directive.
#
AccessFileName .htaccess
AccessFileName .httpdoverride
#<Files ~ "^\.ht">
#    Order allow,deny
#    Deny from all
#</Files>

#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
#<FilesMatch "^\.ht">
#    Require all denied
#</FilesMatch>
----------------------------------

Concernant les fichiers de configuration 000-default.conf et monsite.conf(le site ajouté en hote virtuel), j'ai bien "AllowOverride all"  partout.

En début du fichier .htaccess qui est à la racine de mon site, j'ai mis "Deny from all" afin de vérifier qu'il est lu.

J'ai activé le rewriting (sudo a2enmod rewrite)

si j'accède au site par [IP Serveur]/monsite, la première page s'affiche sans problème, donc le fichier .htaccess n'est pas lu. Juste pour info, le site est en joomla, j'ai activé la réécriture des URL, donc sans lecture du .htaccess aucun lien ne fonctionne. J'ai testé ce site sur un NAS synology, il fonctionne parfaitement, le problème viens bien d'une configuration du serveur Apache.

Ce que je ne comprends pas c'est que si je mets en remarque la ligne  (httpdoverride  ) dans apache2.conf

AccessFileName .htaccess
#AccessFileName .httpdoverride  <--- Cette ligne
#<Files ~ "^\.ht">
#    Order allow,deny
#    Deny from all
#</Files>

Je ne peux plus accéder au site j'ai une erreur FORBIDDEN... depuis que activé le rewriting (sudo a2enmod rewrite), sinon avant j'avais "Internal server Error" sad

Je pense que c'est moi qui ai ajouté cette ligne en début de configuration du serveur, sans penser que j'aurai besoin de la supprimer plus tard.

Si quelqu'un peu m'aider,
Merci d'avance smile

Hors ligne

#2 Le 13/08/2015, à 20:01

ggl082

Re : Apache pb lecture .htaccess

Re-bonjour à tous,

   Maintenant tout fonctionne, alors je fais un retour d'expérience pour ceux que cela peut aider. J'avais initialement installé LAM suivant la procédure automatique durant l'installation de l'OS.

  J'ai tout désinstallé (sudo apt-get remove --purge apache2 php5 mysql-server-5.0 phpmyadmin) puis sudo apt-get autoremove (cette deuxième commande est donnée dans les infos de la première commande).

J'ai ensuite tout réinstallé manuellement en suivant les infos http://doc.ubuntu-fr.org/lamp  §1.2 Alternative 2 : Installation des paquets (méthode recommandée)

sans oublier de réinstaller le rewriting (sudo a2enmod rewrite) et modifier :

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride all   (remplacer none par all)
    Require all granted
</Directory>

Cette modification étant faite au minimum dans etc/apache2/sites-available/000-default.conf sans oublier de modifier <Directory /var/www/> en accord avec documentRoot si vous le modifiez.

Voilà, voilà
smile

Hors ligne