Nginx配置http和https的實(shí)現(xiàn)步驟
配置文件 默認(rèn)放置位置:{nginx}/conf.d/,以conf結(jié)尾
一、http簡(jiǎn)單配置
server { listen 80; server_name www.test.cn; root /mnt/website/ROOT; if ( $query_string ~* ".*[;'<>].*" ){ return 404; } if ( $query_string ~* ".*script.*" ){ return 404; } location ~* ^/WEB-INF/.*$ { deny all; } location ~* ^/(UserFiles|userfiles|images|Images|upload)/.*\.(jsp|js)$ { deny all; } location / { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:8888; } } server{ server_name test.cn; root /mnt/website/ROOT; location ^~ / { rewrite ^(.*) http://www.test.cn$1 permanent; } }
說明:
1,http默認(rèn)端口是80
2,http://127.0.0.1:8888;為實(shí)際本地服務(wù)端口
3,一般服務(wù)域名為二級(jí)域名www,一級(jí)域名一般也配置指向www域名。
二、https配置
首先得申請(qǐng)ssl證書,百度,阿里都有免費(fèi)證書可用,申請(qǐng)成功后,下載nginx壓縮包,解壓后,可見兩種后綴文件,一個(gè)是xxx.key,另一個(gè)是xxx.crt,或者是xxx.pem。文件名可以隨意更改,一般改為域名。
其次是配置文件配置
server { listen 443; server_name www.test.cn; root /mnt/website/ROOT; ssl on; ssl_certificate /etc/nginx/ssl/www.test.cn.crt; ssl_certificate_key /etc/nginx/ssl/www.test.cn.key; ssl_session_timeout 5m; ssl_protocols SSLv3 TLSv1; ssl_ciphers HIGH:!ADH:!EXPORT56:RC4+RSA:+MEDIUM; ssl_prefer_server_ciphers on; if ( $query_string ~* ".*[;'<>].*" ){ return 404; } if ( $query_string ~* ".*script.*" ){ return 404; } location ~* ^/imgPath/.*$ { rewrite ^/imgPath(.*) http://img.test.cn/imgPath$1 last; } location ~* ^/WEB-INF/.*$ { deny all; } location ~* ^/(UserFiles|userfiles|images|Images|upload)/.*\.(jsp|js)$ { deny all; } location / { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:8888; } }
說明:
1,https端口為443,此端口不是服務(wù)器默認(rèn)開放端口,需要單獨(dú)打開。
2,ssl文件放置正確即可。crt文件換成pem文件亦可。
3,資源文件路徑可指向其他域名,可見location ~* ^/imgPath/.*$這段
三、單域名指向本地不同服務(wù),以https配置為例
upstream shop { server 127.0.0.1:7777; } server { listen 443; server_name www.test.cn; root /mnt/website/ROOT; ssl on; ssl_certificate /etc/nginx/ssl/www.test.cn.crt; ssl_certificate_key /etc/nginx/ssl/www.test.cn.key; ssl_session_timeout 5m; ssl_protocols SSLv3 TLSv1; ssl_ciphers HIGH:!ADH:!EXPORT56:RC4+RSA:+MEDIUM; ssl_prefer_server_ciphers on; if ( $query_string ~* ".*[;'<>].*" ){ return 404; } if ( $query_string ~* ".*script.*" ){ return 404; } location ~* ^/imgPath/.*$ { rewrite ^/imgPath(.*) http://img.test.cn/imgPath$1 last; } location ~* ^/WEB-INF/.*$ { deny all; } location ~* ^/(UserFiles|userfiles|images|Images|upload)/.*\.(jsp|js)$ { deny all; } location / { rewrite ^(.*) https://www.test.com$1 permanent; } location /shop/ { proxy_pass http://shop; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 10m; client_body_buffer_size 128k; proxy_connect_timeout 300; proxy_send_timeout 300; proxy_read_timeout 300; proxy_buffer_size 128k; proxy_buffers 2 256k; proxy_busy_buffers_size 256k; proxy_temp_file_write_size 256k; } }
說明:
1,upstream shop,shop只能出現(xiàn)一次
2,可以是本地服務(wù),亦可是其他ip服務(wù),127.0.0.1換成對(duì)應(yīng)ip即可
3,location /shop/ ,此塊必須在server的區(qū)塊內(nèi),/shop/為訪問路徑,即https://www.test.cn/shop/xxx,為訪問路徑
到此這篇關(guān)于Nginx配置http和https的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)Nginx配置http和https內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于Xen的VPS ubuntu+nginx+php安裝教程
跟蹤vps已經(jīng)很久了,但是因?yàn)樾枰厥舛丝陂_服務(wù),所以符合條件的多為Xen平臺(tái)的vps。眾多比較之后選擇了vpslink在西雅圖機(jī)房,速度還不錯(cuò)。2010-07-07Nginx反向代理之proxy_redirect指令的實(shí)現(xiàn)
proxy_redirect指令是用來重置頭信息中的"Location"和"Refresh"的值,本文就來詳細(xì)的介紹一下如何使用,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-08-08Nginx實(shí)現(xiàn)TCP端口的偵聽及轉(zhuǎn)發(fā)操作步驟
這篇文章主要介紹了Nginx實(shí)現(xiàn)TCP端口的偵聽及轉(zhuǎn)發(fā)的相關(guān)資料,文章介紹了如何使用Nginx進(jìn)行TCP代理(四層代理)來處理MQTT的集群需求,包括配置Nginx支持stream模塊、編寫TCP代理配置文件以及重新加載Nginx以應(yīng)用更改,需要的朋友可以參考下2024-11-11Nginx配置PHP的Yii與CakePHP框架的rewrite規(guī)則示例
這篇文章主要介紹了Nginx配置PHP的Yii與CakePHP框架的rewrite規(guī)則示例,是這兩款高人氣框架使用Nginx的關(guān)鍵配置點(diǎn),需要的朋友可以參考下2016-01-01Nginx七層負(fù)載均衡的實(shí)現(xiàn)示例
七層負(fù)載均衡它是在應(yīng)用層,那么它可以完成很多應(yīng)用方面的協(xié)議請(qǐng)求,本文主要介紹了Nginx七層負(fù)載均衡的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2024-04-04nginx 自定義 404、50x 錯(cuò)誤頁(yè)面的實(shí)現(xiàn)
本文主要介紹了nginx 自定義 404、50x 錯(cuò)誤頁(yè)面的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-12-12nginx全局塊的user指令的實(shí)現(xiàn)示例
user用于配置運(yùn)行Nginx服務(wù)器的worker進(jìn)程的用戶和用戶組,本文主要介紹了nginx全局塊的user指令的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2024-07-07Nginx設(shè)置目錄的訪問權(quán)限實(shí)現(xiàn)訪問靜態(tài)資源
遇到Permission denied錯(cuò)誤,通常是Nginx用戶權(quán)限不足,本文就來介紹一下Nginx設(shè)置目錄的訪問權(quán)限實(shí)現(xiàn)訪問靜態(tài)資源2024-10-10