時間:2023-02-10 13:03:01 | 來源:建站知識
時間:2023-02-10 13:03:01 來源:建站知識
話不多說,先貼部分配置:server { listen 80; server_name www.your-domain.com; rewrite ^(.*)$ https://www.your-domain.com$1 permanent;}server { listen 443 ssl; server_name www.your-domain.com; ssl_certificate /home/ssl_certificate/your-domain.com.pem; ssl_certificate_key /home/ssl_certificate/your-domain.com.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_session_timeout 5m; if ( $host != 'www.your-domain.com' ) { rewrite ^(.*)$ https://www.your-domain.com$1 permanent; } root /var/www/html; index index.html index.htm index.nginx-debian.html; # server_name _; location / { proxy_pass http://127.0.0.1:8080; }}
https
配置server { # 我們都知道(我們都應(yīng)該知道),443是 https 的默認(rèn)端口 listen 443 ssl; server_name www.your-domain.com; # 你要有證書,才能 https,免費(fèi)申請一個吧,七牛云,阿里云都有免費(fèi)一年的證書 ssl_certificate /home/ssl_certificate/your-domain.com.pem; ssl_certificate_key /home/ssl_certificate/your-domain.com.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_session_timeout 5m; # 下面這句就是當(dāng)識別到 HOST 不是帶 www 的全部都 301 帶上 www if ( $host != 'www.your-domain.com' ) { rewrite ^(.*)$ https://www.your-domain.com$1 permanent; } root /var/www/html; index index.html index.htm index.nginx-debian.html; # server_name _; location / { # 我是 java web 所以用了 Tomcat ,但是我要用 nginx 做轉(zhuǎn)發(fā),因此有了如下的配置 proxy_pass http://127.0.0.1:8080; }}
http
強(qiáng)制為https
訪問 80
與 443
端口分別配置一個 server
,讓80
端口訪問的強(qiáng)制 301
跳轉(zhuǎn)到 https
。如下所示:把所攜帶的參數(shù)都帶上 rewrite ^(.*)$ https://www.your-domain.com$1 permanent;}
www
的訪問強(qiáng)制加上www
nginx
的配置文件可以寫這種判斷和表達(dá)式,總之是很厲害的,仔細(xì)觀察下面的 if
判斷很容易明白講的什么意思,當(dāng) HOST
不是帶 www
的訪問時 302 到 www
上面。 # 下面這句就是當(dāng)識別到 HOST 不是帶 www 的全部都 302 帶上 www if ( $host != 'www.your-domain.com' ) { rewrite ^(.*)$ https://www.your-domain.com$1 permanent; }
需要注意的是:if ( $host != 'www.your-domain.com' ) {
這一句一定要按照格式書寫,括號前后的空格必須帶著,還有if
之后的空格也一樣。如果不!會報錯:
unknown directive "if($host!="
https
?其實說白了,不是因為大家都用,所以我們也用。舉一個最簡單的例子 https
能防止網(wǎng)絡(luò)運(yùn)營商給你的頁面加?xùn)|西,也能防止網(wǎng)絡(luò)運(yùn)營商窺探你的隱私。如果我們用 http
,網(wǎng)絡(luò)運(yùn)營商可以在你的頁面加廣告,可以把你的傳輸?shù)木W(wǎng)頁進(jìn)行過濾,比如說正則匹配過濾你的電話號碼,郵箱,身份證號,等等個人信息。 再比如好多人用一些免費(fèi)的科學(xué)上網(wǎng)工具,這些都是有風(fēng)險的,你的數(shù)據(jù)流經(jīng)過了第三方的服務(wù)器,那么他就有可能截留分析你的網(wǎng)頁信息。www
跳轉(zhuǎn)到 www
?有助于你的網(wǎng)站的SEO和排名,要不信你試一試一些必須要注重SEO優(yōu)化的網(wǎng)站類型,比如新聞資訊站這一類的,都會強(qiáng)制加上www
。其實這個www
是個遺留問題,本來已經(jīng)沒啥用了,但是因為歷史已成定局,規(guī)則已經(jīng)定下來,大家沒辦法,只有遵守了。本質(zhì)上加上www
和不加www
是兩個網(wǎng)站,搜索引擎統(tǒng)計的話會按照兩個域名來統(tǒng)計,而且發(fā)現(xiàn)爬這兩個網(wǎng)站的內(nèi)容都是一個樣,這對你的SEO有致命問題,當(dāng)然現(xiàn)在的話隨著搜索引擎的進(jìn)化可能已經(jīng)不存在這類問題了,但是不能不在意這些問題。nginx
做為 Tomcat
的代理?一個是 nginx
性能好,而是可以做負(fù)載均衡,用戶增長后可以快速部署多個 Tomcat
分擔(dān)壓力。 GZIP
壓縮你的網(wǎng)頁,JS,CSS!作用很大的,減少傳輸數(shù)據(jù)量。關(guān)鍵詞:強(qiáng)制,配置
客戶&案例
微信公眾號
版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。