2012-04-02 3 views
3

J'ai du mal à essayer de forcer https (ssl) vers une page particulière sur le framework codeiginiter. J'ai essayé plusieurs façons, mais aucune n'a fonctionné. La seule façon qui a fonctionné pour moi est de changer le lien du site $ config ['base_url'] pour commencer par https au lieu de http. Le résultat a été que tous les liens ont été mis à ssl (le site entier), ce qui n'a aucun sens car je n'ai pas besoin d'utiliser le SSL partout. J'ai utilisé du code PHP dans la page de connexion, mais cela a causé quelques problèmes, donc j'ai abandonné.codeigniter, forcer ssl sur une page particulière

Je veux savoir si c'est une bonne méthode comment faire ça, une idée?

Merci,

Répondre

4

Vous devez ajouter la condition sur .htaccess pour utiliser le travail du port SSL uniquement pour les urls sélectionnés.

est par exemple ici, comment faire

RewriteEngine on 

RewriteCond %{SERVER_PORT} 80 
RewriteCond %{REQUEST_URI} controller/function 
RewriteRule ^(.*)$ https://www.yourdomain.com/controller/function[R=301,L] 

RewriteCond %{SERVER_PORT} 443 
RewriteCond %{REQUEST_URI} controller/function 
RewriteRule ^(.*)$ https://www.yourdomain.com/controller/function[R=301,L] 

RewriteCond $1 !^(index\.php|images|robots\.txt) 
RewriteRule ^(.*)$ index.php/$1 [L] 

P.S: Votre base_url doit être réglé sur “/” dans votre fichier de configuration. Pour plus d'informations, vérifiez http://codeigniter.com/wiki/SSL_Handling

+0

Merci pour la réponse. BTW, êtes-vous sûr que ce code fonctionne? Je l'ai essayé et tout mon site ne fonctionne pas. Le navigateur donne un message d'erreur que mon site est en panne ou en maintenance ... une idée? –

+0

ok, va essayer à nouveau –

+0

maintenant les choses vont bien ... quelle est la prochaine afin que je puisse utiliser https? –

Questions connexes