Comment puis-je redire de https à http? J'ai le code ci-dessous mais cela ne semble pas fonctionner.nginx rediriger HTTPS vers HTTP
server {
listen 443;
server_name example.com;
rewrite ^(.*) http://example.com$1 permanent;
}
Comment puis-je redire de https à http? J'ai le code ci-dessous mais cela ne semble pas fonctionner.nginx rediriger HTTPS vers HTTP
server {
listen 443;
server_name example.com;
rewrite ^(.*) http://example.com$1 permanent;
}
if ($host = 'foo.com') {
rewrite ^/(.*)$ http://www.foo.com$1 permanent;
}
nginx [Pièges] (http://wiki.nginx.org/Pitfalls#Server_Name) et [IfIsEvil] (http://wiki.nginx.org/IfIsEvil). Ce code devrait probablement être refactorisé en deux blocs 'server' séparés, un qui attrape http et un autre qui attrape https, puis' return 301 http: // $ server_name $ request_uri; '. –
La réponse fonctionnera ci-dessus, vous devez générer un auto-signé cert (ou un vrai) et configurer nginx comme tel:
server {
listen *:443;
ssl on;
server_name domain.com;
rewrite ^(.*) http://domain.com$1 permanent;
ssl_certificate /data/certs/domain.crt;
ssl_certificate_key /data/certs/domain.key;
}
Gardez à l'esprit, si elle est un cert autosigné le navigateur vous donnera un avertissement moche.
N'est-il pas possible d'avoir cette redirection sans l'avertissement moche, sans acheter un certificat que nous n'utiliserons pas? Merci! – dgilperez
Vous pouvez obtenir un certificat SSL gratuit de startssl, qui supprimerait les avertissements. Les certificats auto-signés lanceront toujours les avertissements dont vous parlez. –
Vous pouvez également remplacer '' réécrire^(. *) Http: //domain.com$1 permanent; '' avec '' réécrire^(. *) Http: // $ host $ 1 permanent; '' si vous avez plusieurs serveurs noms spécifiés. – ub3rst4r
bâtiment hors commentaire de jberger une configuration qui devrait fonctionner serait:
server {
listen *:80;
server_name example.com;
}
server {
listen *:443 ssl;
server_name example.com;
ssl_certificate /etc/ssl/certs/example.com.cert;
ssl_certificate_key /etc/ssl/private/example.com.key;
return 301 http://$server_name$request_uri;
}
-vous s'il vous plaît accepter la réponse? – brupm