linux URL的301重定向代碼分析
所以凡是使用linux的主機(jī),我都會定義個301重定向,以利于SEO。昨天照例把htaccess傳到服務(wù)器上,沒想到傳上后網(wǎng)站無法訪問,一刪除就恢復(fù)正常。看了很多遍代碼,也沒發(fā)現(xiàn)什么問題。 干脆就重新學(xué)習(xí)下URL重寫方法。
規(guī)范化URL
描述:
在有些web服務(wù)器上,一個資源會擁有多個URL。在實(shí)際應(yīng)用和發(fā)布中應(yīng)該使用的是規(guī)范的URL,其他的則是簡寫或者只在內(nèi)部使用。無論用戶在請求中使用什么形式的URL,最終看見的都應(yīng)該是規(guī)范的URL。
解決方案:
對所有不規(guī)范的URL執(zhí)行一個外部HTTP重定向,以改變它在瀏覽器地址欄中的顯示及其后繼請求。下例中的規(guī)則集用規(guī)范的/u/user替換/~user,并修正了/u/user所遺漏的后綴斜杠。
RewriteRule ^/~([^/]+)/?(.*) /u/$1/$2 [R]
RewriteRule ^/([uge])/([^/]+)$ /$1/$2/ [R]
規(guī)范化主機(jī)名
描述:
這個規(guī)則的目的是強(qiáng)制使用特定的主機(jī)名以代替其他名字。比如,你想強(qiáng)制使用www.example.com代替example.com,就可以在以下方案的基礎(chǔ)上進(jìn)行修改:
解決方案:
對運(yùn)行在非80端口的站點(diǎn)
RewriteCond %{HTTP_HOST} !^fully\.qualified\.domain\.name [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{SERVER_PORT} !^80$
RewriteRule ^/(.*) http://fully.qualified.domain.name:%{SERVER_PORT}/$1 [L,R]
對運(yùn)行在80端口的站點(diǎn)
RewriteCond %{HTTP_HOST} !^fully\.qualified\.domain\.name [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^/(.*) http://fully.qualified.domain.name/$1 [L,R]
參考了上面的規(guī)則,發(fā)現(xiàn)自己原先的代碼里少了個!號,加上就恢復(fù)正常了。
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{HTTP_HOST} !^do-javascript.com [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^/(.*) http://www.do-javascript.com/$1 [r=301,nc]
相關(guān)文章
linux虛擬網(wǎng)絡(luò)設(shè)備之vlan配置詳解
這篇文章主要給大家介紹了關(guān)于linux虛擬網(wǎng)絡(luò)設(shè)備之vlan配置的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-12-12
Linux多線程環(huán)境下 關(guān)于進(jìn)程線程終止函數(shù)總結(jié)
下面小編就為大家?guī)硪黄狶inux多線程環(huán)境下 關(guān)于進(jìn)程線程終止函數(shù)總結(jié)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-01-01
在ubuntu16.04上創(chuàng)建matlab的快捷方式(實(shí)現(xiàn)方法)
下面小編就為大家分享一篇在ubuntu16.04上創(chuàng)建matlab的快捷方式實(shí)現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助2017-12-12
Linux查看系統(tǒng)文件打開數(shù)的方法小結(jié)
有許多情況下,我們需要查看一個進(jìn)程當(dāng)前打開了哪些文件,反過來我們也希望知道某一個文件正在被哪些進(jìn)程所讀寫,在Linux下有許多有用的工具可以幫我們完成這兩個工作,本文給大家介紹了Linux查看系統(tǒng)文件打開數(shù)的方法小結(jié),需要的朋友可以參考下2024-07-07
apache下支持asp.net的實(shí)現(xiàn)方法
讓apache支持asp.net的設(shè)置步驟。2009-12-12
Linux運(yùn)維從初級進(jìn)階為高級知識點(diǎn)總結(jié)
在本篇文章里小編給大家整理了關(guān)于Linux運(yùn)維從初級進(jìn)階為高級知識點(diǎn)總結(jié)內(nèi)容,需要的為朋友們學(xué)習(xí)下。2019-06-06
Linux使用 iftop 實(shí)時監(jiān)控網(wǎng)卡的流量
iftop可以用來監(jiān)控網(wǎng)卡的實(shí)時流量(可以指定網(wǎng)段)、反向解析IP、顯示端口信息等。這篇文章主要介紹了Linux 實(shí)時網(wǎng)卡流量監(jiān)控,需要的朋友可以參考下2019-11-11

