所以我试图将所有http请求重定向到https,我的代码如下所示:
server {
server_name localhost;
listen 80;
return 302 https://$server_name$request_uri;
}
我读到使用return而不是重写更好地重定向。我正在使用return 302
,因为我认为它是非永久性重定向,而return 301
是永久性的,它将保存在缓存中,这意味着每次我尝试访问http://localhost
时都会一个不同的nginx配置我将被重定向到https://localhost
,直到我清理我的缓存。我阅读了文档,但是,我不太了解它,从它的外观还有2个选项:
For a code in the 3xx series, the url parameter defines the new (rewritten) URL.
return (301 | 302 | 303 | 307) url;
那么303和307的目的是什么?我尝试使用307,它与302的差异为0.