bonjour,
Je mes liens ne fonctionne plus correctement, ( ne trouve plus les fichier )
depuis que j'ai mis en place SSL pour apache.

Options +FollowSymlinks

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php

et j'ai
une erreur 404 quand je tape https://dev.tld/
The requested URL /direct was not found on this server.

alors que si je tape http://dev.tld/direct ca marche

15 réponses


sylvain
Auteur
Réponse acceptée

ok pas de soucis, de toute facon j'ai trouvé le probleme, le vhost etais mal configuré

RewriterRule (.*) /index.php [L]

est peut être la solution ?

sylvain
Auteur

Non pareil, meme erreur

Ah oui j'avais pas vu mais en gros ça marche si tu passes sous l'url non sécurisée.
Ton certificat SSL est-il bon ? Pour ce genre d'opération il faut un certificat SSL qui convient.

sylvain
Auteur

le certificat est bon, ce n'est pas un probleme de certificat.

Une question dans la configuration Apache le module SSL est bien sûr activé ?

sylvain
Auteur

Oui bien sur quel question.

Salut, essaies de remplacer ta règle avec:

RewriteRule ^(.*)$ http://dev.tld [R=301, L]

C'est pas tellement une solution ce que tu proposes RedaElkhayat puisque toutes les urls seront redirigées vers http://dev.tld donc quand il va taper https://dev.tld il sera directement renvoyé sur http://dev.tld le certificat SSL ne sera donc pas pris en compte si je ne dis pas de bêtise.
Mets-ceci dans ton .htaccess Sylvain:
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*)$ https://www.votre-domaine.fr/$1 [R]

Tu es chez 1 and 1 ? c'est l'option FollowSymLinks qui me fait dire ça ^^ .

sylvain
Auteur

@Xtr3me : je viens de faire mais ca ne marche pas.
Si j'ai bien compris la ligne, on test le port 80 et on redirige vers le htaccess.
Je ne veux pas rediriger tout les liens vers du https.
Mais juste lancer le lien en direct et que ca marche.

En gros si on est sur le port 80 on redirige tout les liens vers le site en https.
Si tu es bien chez 1 and 1 comme j'en ai l'impression il y a une FAQ qui peut t'aider en sachant qu'il y a deux types de SSL chez eux, mutualisés ou dédiés ^^ .

sylvain
Auteur

Pas sur que je me suis fait comprendre, je ne veux pas rediriger tout vers le port 80.

Je veux juste que si je saisi un url en https ca marche. pas de redirection en gros.

Je suis auto hébergé sur un Debian dédié

Ok non je n'ai pas dis que tout était redirigé sur le port 80 x).
Le port 80 est la condition pour la réécriture qui elle réécrit les url http en https.
Ah oui pour l'auto-hébergement ça va être plus complexe, pour les certificats ssl ils doivent correspondre avec l'hébergeur et c'est pour ça qu'il faut qu'il passe par un organisme tel que geotrust pour être approuvé. Dans ton cas ceci peut peut-être t'aider surtout la dernière partie pour voir si ton certificat a bien été déclaré.

Je ne maîtrise pas assez Linux pour pouvoir t'aider moi même et encore moins Debian, je tourne personnellement sous Fedora ^^ .

en https le port est normalement le port 443 et le port http le 80... a voir dans la config apache

sylvain
Auteur

J'aimerais savoir comment forcer quelques repertoire en https, par exemple admin, users.

j'ai essay ca sans success

# Turn SSL off everything, except members and admin
RewriteCond %{HTTPS} =on
RewriteCond %{REQUEST_URI} !^(/piwik|/admin)
RewriteRule .* http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]