如何使用自己電腦搭建一個外網可以訪問的伺服器
我們平常學習時經常會寫一下javaweb程式,我們為了更能逼近現實,就想著自己的javaweb程式釋出後,外網的同學能夠訪問我們的網站,難道我們去買空間,去買域名嘛,其實也沒必要,我們只是學習,測試之用,在自己的電腦上搭建一個伺服器完全可以滿足要求。上次寫的一篇部落格,PC服務端與Android客戶端實現網路通訊,就是利用這個原理。
我們分為三步走來實現:(我這裡用的示例javaweb程式是我自己簡單寫的一個小程式shop1)
1,
我們用Tomcat伺服器,如果我們的javaweb程式已經部署到了Tomcat伺服器,一般我們在本地訪問的地址為:localhost:8080/shop1,localhost
即將port從原先的8080修改成80,因為http協議的預設埠是80,這樣你就可以不用再輸埠號了,把docBase="shop1"的值修改成你所部屬的專案的名稱,預設指向你的專案,這樣你就可以不輸專案的名稱了。
還得注意一點Tomcat 7.0的版本的server.xml檔案中居然沒有
這一條,又下載了一個5.0
OK,這樣的話,你在瀏覽器裡輸入localhost就可以訪問你的專案了!
PS:為了下來的工作中不出現什麼問題,我並沒有將8080埠改成80,據說80埠被電信封掉了,我讓用電信上網的同學訪問我的網站,果然不行,這裡我們明白道理就可以了,只是學習測試之用,所以我們就用8080埠。
2,
上一步我們只實現了自己訪問,但如何讓外網的同學訪問,這裡可能涉及了簡單的網路知識,我網路學的也不是很好。就說的比較通俗一點。有兩種情況(1)你上網沒有用路由,運營商單獨分給你一個IP地址,那你直接可以用你的IP讓外網的同學來訪問你的網站,我們這裡用的是8080埠,所以形式為:XX.XX.XX.XX:8080
(2)用了路由器,一個路由器帶了好幾臺電腦,比如說跟室友,這就需要你去路由管理頁面去設定一下,埠對映,讓別人訪問你們的IP地址時,對映到你的電腦,在瀏覽器中輸入192.168.1.1(以你的路由為準),進入路由管理頁面,操作如下圖:
轉發規則-----虛擬伺服器-------新增新條目
埠我們沒改,所以填8080,IP地址為你的電腦在區域網中的地址,怎麼樣知道自己的區域網中的地址,很簡單自己百度一下,只要局域網裡的電腦不是太多,一般為192.168.1.XXX,我這裡為192.168.1.101,然後點選儲存,OK,然後外網就可以用你們IP去訪問你的網站了!
我的效果圖如下:
這時可以把這個網址發給你的同學,試一下,他能不能訪問你的網站,答案是肯定的!
3,
但是又有新問題了,你第二天開啟路由,或者再次上網時,運營商會重新分配給你一個新的IP地址,難道你讓你同學訪問時,再次把這個IP地址發給他嗎?顯然這是不合理了。
此時,我們就想有一個動態域名多好。這裡給大家介紹一款軟體“花生殼”,下載安裝,然後註冊後,你就會獲得一個免費的二級域名,每次開機自啟後,就會將花生殼服務端中的IP資料更新成你新的IP地址,然後你每次用你固定的域名來訪問時,就會解析到你新的IP地址。
如下圖:
雙擊你的域名,看有沒有顯示出“經檢測,您的域名已啟用並指向正確”!
OK,到這裡,沒有路由的同學,就可以直接用你的域名訪問了!
有路由的同學,還得多操作一步:
再次進入路由管理頁面,操作如下圖:
點選“動態DNS”,這時如果你的上述操作都沒問題的話,服務提供者那一欄已經自動填充成花生殼的網址了,然後輸入使用者名稱,密碼,點選登入,如果顯示為“連線成功”,那點選“儲存”。
到這裡,終於大功告成,看一下最終效果圖:
可以看到,我用我的域名成功的訪問到了我的網站。
PS:有時顯示“驗證成功”時也是個假象,一點選“儲存”時,又顯示為“驗證失敗”,再點選“登入”,多點選幾次“儲存”,直到它一直顯示為“驗證成功”即可,反正就是多試幾次。
轉截他人的,個人覺得很實質,對於想把電腦搭成伺服器的朋友可以好好看一下。很有實用性。