Apache網(wǎng)站添加IPv6訪問
Apache網(wǎng)站添加IPv6訪問新年新氣象,我也給這個博客站增添了新的東西,那就是IPv6支持。由于IPv4資源的逐漸枯竭,IPv6這幾年發(fā)展得很快,國外很多VPS廠商都已經(jīng)提供了IPv6的支持。國內(nèi)目前還很少用IPv6,但對于教育網(wǎng)用戶,所有的IPv6網(wǎng)站都是可以免費訪問的,因
Apache網(wǎng)站添加IPv6訪問新年新氣象,我也給這個博客站增添了新的東西,那就是IPv6支持。由于IPv4資源的逐漸枯竭,IPv6這幾年發(fā)展得很快,國外很多VPS廠商都已經(jīng)提供了IPv6的支持。國內(nèi)目前還很少用IPv6,但對于教育網(wǎng)用戶,所有的IPv6網(wǎng)站都是可以免費訪問的,因
新年新氣象,我也給這個博客站增添了新的東西,那就是IPv6支持。由于IPv4資源的逐漸枯竭,IPv6這幾年發(fā)展得很快,國外很多VPS廠商都已經(jīng)提供了IPv6的支持。國內(nèi)目前還很少用IPv6,但對于教育網(wǎng)用戶,所有的IPv6網(wǎng)站都是可以免費訪問的,因此給網(wǎng)站增加IPv6訪問后可以對教育網(wǎng)用戶,尤其是學生群體非常有利。由于我自己用的是Apache,正好也因為自己的需要,所以就以這個網(wǎng)站為例,介紹一下怎樣在Apache中配置IPv6網(wǎng)站以及相關(guān)的解析、內(nèi)容訪問等工作,并簡要介紹一下Wordpress鏡像站的簡單制作。
首先我們需要明確自己的VPS是否支持IPv6。比如我現(xiàn)在用的阿里云,就完全不支持!目前來看,國內(nèi)的VPS沒有一家是支持IPv6的,而且即便用He.net的IPv6 Tunnel也沒有辦法實現(xiàn)IPv6訪問,這是國內(nèi)外網(wǎng)絡(luò)環(huán)境不同所導致的,所以要實現(xiàn)IPv6訪問,對于我來說唯一的辦法是在國外VPS上再搭建一個同步環(huán)境。正好還有一個BuyVM 128M內(nèi)存的小雞,而且它很方便地提供了一個/64的IPv6,于是就用這個來提供IPv6訪問。
首先,我們要確保VPS能夠從IPv6正確訪問。設(shè)VPS的IPv6地址為2013:12:24::1,那么我們用自己的電腦執(zhí)行ping6 2013:12:24::1,若能正確返回即可?;氐絍PS,搭好Apache服務(wù)器,打開Apache配置文件或者虛擬主機配置文件,比如vhost.conf,按照IPv4一樣的寫法配置一個虛擬主機。需要了解的是,對于IPv6來說,最好給每個網(wǎng)站分配單獨的IP地址。在Apache中,所有的IPv6都需要用方括號[]括起來,以示與IPv4的區(qū)分。因此,我們的虛擬主機文件的首行應(yīng)該寫成<VirtualHost [2013:12:24::1]:80>而不是<VirtualHost 2013:12:24::1:80>或者<VirtualHost *:80>如果用通配符*來指代所有可用IP,對于IPv6網(wǎng)站Apache可能不能正確處理導致無法正常訪問。
配置好虛擬主機文件后執(zhí)行/etc/init.d/httpd reload (CentOS)或者 a2ensite(Ubuntu)等指令來啟用虛擬主機。這時我們訪問該IPv6就可以看到Apache的歡迎頁面了。其他的操作和IPv4操作是基本相同的。當然,首先我們也需要把對應(yīng)的域名做一個AAAA記錄解析到對應(yīng)的IPv6上,國內(nèi)的解析商除了DNSPod之外好像都不支持AAAA記錄,國外的解析商一般都是支持AAAA記錄的。解析好之后,就可以通過域名訪問到IPv6地址的Apache歡迎頁了。接下來我簡要介紹一下怎樣制作一個Wordpress的鏡像站。首先要明確的是,我制作這個鏡像站的目的僅僅是為了添加IPv6的訪問支持,并不是為了提高國外的訪問速度;而且IPv6鏡像站只能放在國外,國內(nèi)訪問速度一定會降低。所以這個鏡像站的訪問速度是不在我考慮的范圍內(nèi)的。因此,我們只需要做到的一個站點的數(shù)據(jù)更改后鏡像站點的數(shù)據(jù)能夠同步更改,或者鏡像站點的數(shù)據(jù)更改后主站點的數(shù)據(jù)也能夠同步更改就可以了。一個比較常用的方法是MySQL的雙向同步,但是我這種懶人顯然是不高興做這么麻煩的事情的。我們知道,WordPress的所有數(shù)據(jù)都是通過MySQL存放的,那么我們只需要讓兩個站點的Wordpress使用同一個數(shù)據(jù)庫,就可以實現(xiàn)主站和鏡像站的完全同步??紤]到網(wǎng)站的主要訪問者是國內(nèi)用戶,因此只能犧牲IPv6鏡像站的訪問速度了。我們將主站的wordpress文件夾打包復制到鏡像站點后解壓,接著打開wp-config.php文件,將DB_HOST這個常量由localhost改為主站的MySQL外部訪問地址(記得加上端口號),就做到了數(shù)據(jù)庫的完全共享。訪問一下IPv6域名,主頁已經(jīng)可以正常顯示了。但別高興太早,只完成了一半。
我們隨意點擊鏡像站上的一個鏈接,發(fā)現(xiàn)又跳回了主站點的對應(yīng)頁面。對呀,我們的博客地址也是保存在MySQL里面的,共享了MySQL之后,鏡像站里面每一條鏈接都是由主站點的URL加上其他Rewrite內(nèi)容組成的,這就麻煩了,如果不做更改,那么IPv6鏡像站就只能訪問主頁了,其他所有的頁面都會跳回主站點。解決的辦法也不復雜,打開鏡像站點的wp-config.php文件,在數(shù)據(jù)庫連接操作之后增加一條Wordpress地址的常量定義即可,即define('WP_HOME', 'http://ipv6.xxx.xx'); define('WP_SITEURL', 'http://ipv6.xxx.xx');這樣再訪問鏡像站時所有的鏈接都改成了IPv6站的鏈接,我們的簡易IPv6鏡像站就制作完畢了。需要注意的是,以后寫的博客中附帶的圖片等附件需要在主站點和鏡像站點中分別上傳,并保證文件名一致,否則在IPv6站點下就不一定能夠看到圖片。
版權(quán)所有:重慶安菲科技有限公司