最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx強(qiáng)制跳轉(zhuǎn)Https(Http訪問跳轉(zhuǎn)Https)

 更新時間:2023年10月17日 09:55:26   作者:趙客縵胡纓v吳鉤霜雪明  
這篇文章主要為大家介紹了Http訪問強(qiáng)制跳轉(zhuǎn)到Https的幾種方式詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

Nginx安裝注意事項(xiàng)

最近公司要上線HTTPS,需要把之前的HTTP訪問強(qiáng)制跳轉(zhuǎn)到HTTPS

安裝的時候需要注意加上 --with-http_ssl_module,因?yàn)閔ttp_ssl_module不屬于Nginx的基本模塊。

#1.配置
./configure 
--user=www 
--group=www 
--prefix=/usr/local/nginx 
--with-http_stub_status_module 
--with-http_ssl_module
#2.編譯安裝
make && make install

配置SSL證書

如下兩個證書文件

ssl.crt

ssl.key

配置存放路徑為/usr/local/nginx/cert/

server {
          listen 443;
          server_name dev.wangsl.com;
          root /var/www/XXX/public;
 
          ssl on;
          ssl_certificate /usr/local/nginx/cert/ssl.crt;
          ssl_certificate_key /usr/local/nginx/cert/ssl.key;
          ssl_session_timeout 5m;
          ssl_protocols SSLv2 SSLv3 TLSv1;
          ssl_ciphers HIGH:!aNULL:!MD5;               //或者是ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
          ssl_prefer_server_ciphers on;
 
          access_log /var/www/vhosts/www.wangsl.com/logs/clickstream_ssl.log main;
          error_log /var/www/vhosts/www.wangsl.com/logs/clickstream_error_ssl.log;
 
         if ($remote_addr !~ ^(124.165.97.144|133.110.186.128|133.110.186.88)) {           //對訪問的來源ip做白名單限制
                rewrite ^.*$ /maintence.php last;
         }
         
         location ~ \.php$ {
              fastcgi_pass 127.0.0.1:9000;
              fastcgi_read_timeout 300;
              fastcgi_index index.php;
              fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
             #include fastcgi_params;
             include fastcgi.conf;
         }
}

Http訪問強(qiáng)制跳轉(zhuǎn)到Https的幾種方式:

一、采用nginx的rewrite方法

1) 下面是將所有的http請求通過rewrite重寫到https上。

例如將所有的dev.wangsl.com域名的http訪問強(qiáng)制跳轉(zhuǎn)到https。

下面配置均可以實(shí)現(xiàn):

#配置1:
server {
    listen 80;
    server_name dev.wangsl.com;
    index index.html index.php index.htm;
    access_log  /usr/local/nginx/logs/8080-access.log main;
    error_log  /usr/local/nginx/logs/8080-error.log;
    rewrite ^(.*)$  https://$host$1 permanent;        //這是ngixn早前的寫法,現(xiàn)在還可以使用。
    location ~ / {
    root /var/www/html/8080;
    index index.html index.php index.htm;
    }
    }
================================================================
上面的跳轉(zhuǎn)配置rewrite ^(.*)$  https://$host$1 permanent;
也可以改為下面
rewrite ^/(.*)$ http://dev.wangsl.com/$1 permanent;
或者
rewrite ^ http://dev.wangsl.com$request_uri? permanent;
================================================================
#配置2:
server {
    listen 80;
    server_name dev.wangsl.com;
    index index.html index.php index.htm;
    access_log  /usr/local/nginx/logs/8080-access.log main;
    error_log  /usr/local/nginx/logs/8080-error.log;
    return      301 https://$server_name$request_uri;      //這是nginx最新支持的寫法
    location ~ / {
    root /var/www/html/8080;
    index index.html index.php index.htm;
    }
    }
#配置3:這種方式適用于多域名的時候,即訪問wangsl.com的http也會強(qiáng)制跳轉(zhuǎn)到https://dev.wangsl.com上面
server {
    listen 80;
    server_name dev.wangsl.com wangsl.com *.wangsl.com;
    index index.html index.php index.htm;
    access_log  /usr/local/nginx/logs/8080-access.log main;
    error_log  /usr/local/nginx/logs/8080-error.log;
    if ($host ~* "^wangsl.com$") {
    rewrite ^/(.*)$ https://dev.wangsl.com/ permanent;
    }
    location ~ / {
    root /var/www/html/8080;
    index index.html index.php index.htm;
    }
    }
#配置4:下面是最簡單的一種配置
server {
    listen 80;
    server_name dev.wangsl.com;
    index index.html index.php index.htm;
    access_log  /usr/local/nginx/logs/8080-access.log main;
    error_log  /usr/local/nginx/logs/8080-error.log;
    if ($host = "dev.wangsl.com") {
       rewrite ^/(.*)$ http://dev.wangsl.com permanent;
    }
    location ~ / {
    root /var/www/html/8080;
    index index.html index.php index.htm;
    }
    }

二、采用nginx的497狀態(tài)碼

497 - normal request was sent to HTTPS 
#解釋:當(dāng)網(wǎng)站只允許https訪問時,當(dāng)用http訪問時nginx會報出497錯誤碼
#配置實(shí)例:
#如下訪問dev.wangsl.com或者wangsl.com的http都會被強(qiáng)制跳轉(zhuǎn)到https
server {
    listen 80;
    server_name dev.wangsl.com wangsl.com *.wangsl.com;
    index index.html index.php index.htm;
    access_log  /usr/local/nginx/logs/8080-access.log main;
    error_log  /usr/local/nginx/logs/8080-error.log;
    error_page 497  https://$host$uri?$args; 
    location ~ / {
    root /var/www/html/8080;
    index index.html index.php index.htm;
    }
    }
#也可以將80和443的配置放在一起:
server { 
    listen       127.0.0.1:443;  #ssl端口 
    listen       127.0.0.1:80;   #用戶習(xí)慣用http訪問,加上80,后面通過497狀態(tài)碼讓它自動跳到443端口 
    server_name  dev.wangsl.com; 
    #為一個server{......}開啟ssl支持 
    ssl                  on; 
    #指定PEM格式的證書文件  
    ssl_certificate      /etc/nginx/wangsl.pem;  
    #指定PEM格式的私鑰文件 
    ssl_certificate_key  /etc/nginx/wangsl.key; 
    #讓http請求重定向到https請求  
    error_page 497  https://$host$uri?$args; 
    location ~ / {
    root /var/www/html/8080;
    index index.html index.php index.htm;
    }
    }

三、利用meta的刷新作用將http跳轉(zhuǎn)到https

上述的方法均會耗費(fèi)服務(wù)器的資源,可以借鑒百度使用的方法:巧妙的利用meta的刷新作用,將http跳轉(zhuǎn)到https
可以基于http://dev.wangsl.com的虛擬主機(jī)路徑下寫一個index.html,內(nèi)容就是http向https的跳轉(zhuǎn) 

將下面的內(nèi)容追加到index.html首頁文件內(nèi)

[root@localhost ~]# cat /var/www/html/8080/index.html
<html> 
<meta http-equiv="refresh" content="0;url=https://dev.wangsl.com/"> 
</html>
[root@localhost ~]# cat /usr/local/nginx/conf/vhosts/test.conf
server {
    listen 80;
    server_name dev.wangsl.com wangsl.com *.wangsl.com;
    index index.html index.php index.htm;
    access_log  /usr/local/nginx/logs/8080-access.log main;
    error_log  /usr/local/nginx/logs/8080-error.log;
    #將404的頁面重定向到https的首頁 
    error_page  404 https://dev.wangsl.com/;  
    location ~ / {
    root /var/www/html/8080;         
    index index.html index.php index.htm;
    }
    }

四、通過proxy_redirec方式

解決辦法:

# re-write redirects to http as to https, example: /home
proxy_redirect http:// https://;

以上就是Nginx強(qiáng)制跳轉(zhuǎn)Https(Http訪問跳轉(zhuǎn)Https)的詳細(xì)內(nèi)容,更多關(guān)于Nginx強(qiáng)制跳轉(zhuǎn)Https的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Nginx?配置?HTTPS的詳細(xì)過程

    Nginx?配置?HTTPS的詳細(xì)過程

    這篇文章主要介紹了Nginx?配置?HTTPS?完整過程,包括nginx?的?ssl?模塊安裝,ssl?證書部署,nginx.conf?配置,重啟?nginx無信息提示就成功啦,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • Nginx超時時間的配置說明

    Nginx超時時間的配置說明

    Nginx超時時間非常重要,因?yàn)樗鼘⒅苯佑绊懢W(wǎng)站的響應(yīng)速度和用戶體驗(yàn),本文主要介紹了Nginx超時時間的配置說明,具有一定的參考價值,感興趣的可以了解一下
    2024-07-07
  • CentOS 7下編譯安裝Nginx 1.11.10教程

    CentOS 7下編譯安裝Nginx 1.11.10教程

    這篇文章主要介紹了在CentOS 7下編譯安裝Nginx 1.11.10的方法,文中給出了詳細(xì)的安裝步驟,相信對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。
    2017-03-03
  • 詳解nginx同一端口監(jiān)聽多個域名和同時監(jiān)聽http與https

    詳解nginx同一端口監(jiān)聽多個域名和同時監(jiān)聽http與https

    這篇文章主要介紹了詳解nginx同一端口監(jiān)聽多個域名和同時監(jiān)聽http與https的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • LINUX中NGINX反向代理下的TOMCAT集群(詳解)

    LINUX中NGINX反向代理下的TOMCAT集群(詳解)

    下面小編就為大家?guī)硪黄狶INUX中NGINX反向代理下的TOMCAT集群(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • 淺談nginx讀寫鎖的實(shí)現(xiàn)邏輯

    淺談nginx讀寫鎖的實(shí)現(xiàn)邏輯

    本文主要介紹了淺談nginx讀寫鎖的實(shí)現(xiàn)邏輯,是通過自旋鎖來實(shí)現(xiàn)的,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • Nginx限制特定IP訪問自己的網(wǎng)站實(shí)現(xiàn)的幾種方法

    Nginx限制特定IP訪問自己的網(wǎng)站實(shí)現(xiàn)的幾種方法

    本文主要介紹了使用Nginx限制特定IP訪問自己的網(wǎng)站的幾種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-12-12
  • nginx部署前端項(xiàng)目location時root和alias配置指南

    nginx部署前端項(xiàng)目location時root和alias配置指南

    nginx指定文件路徑有兩種方式root和alias,下面這篇文章主要給大家介紹了關(guān)于nginx部署前端項(xiàng)目location時root和alias配置的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-01-01
  • nginx+ingress 413問題排查過程

    nginx+ingress 413問題排查過程

    處理413錯誤需調(diào)整Nginx的client_max_body_size及Ingress配置,合理設(shè)置body-size,若無效,檢查后端限制,注意過大可能影響安全
    2025-08-08
  • Windows下用Nginx代理Django安裝配置實(shí)例

    Windows下用Nginx代理Django安裝配置實(shí)例

    這篇文章主要介紹了Windows下用Nginx代理Django安裝配置實(shí)例,本文講解了安裝djanjo、用djanjo生成簡單web頁面、用nginx進(jìn)行代理等內(nèi)容,需要的朋友可以參考下
    2015-03-03

最新評論

黄大仙区| 临桂县| 工布江达县| 香格里拉县| 蒙阴县| 西宁市| 云霄县| 茂名市| 桂东县| 始兴县| 凭祥市| 宜章县| 安陆市| 海丰县| 灵川县| 定陶县| 治县。| 涟水县| 伊春市| 棋牌| 麟游县| 桃江县| 竹溪县| 抚顺市| 台中市| 汉寿县| 抚远县| 离岛区| 陆川县| 逊克县| 石渠县| 鸡西市| 喀什市| 柘城县| 襄垣县| 武陟县| 家居| 新泰市| 轮台县| 鄱阳县| 桐梓县|