1. 程式人生 > >域名解析及nginx使用

域名解析及nginx使用

目的:使用windows+nginx+tomcat實現域名訪問伺服器

騰訊雲申請的域名:weixiangming.com

由於暫時沒有公網ip地址,也懶得做外網對映。所以伺服器用區域網ip地址,使用區域網ip訪問。

windows伺服器:區域網內IP地址:192.168.1.197

一.域名解析

主機記錄:www

記錄型別:A

線路型別:預設

記錄值:192.168.1.197

如圖:

此時可以使用域名:埠號訪問伺服器,如www.weixiangming.com:8080:

二.使用nginx代理伺服器做轉發

1)在伺服器上安裝nginx。

使用cd命令,進入到nginx目錄,執行start nginx

此時黑視窗一閃而過

開啟工作管理員,檢視是否有nginx程序,如下:

瀏覽器輸入localhost,出現如下說明nginx啟動成功

那麼這些實際上是在哪裡配置的。這就涉及到nginx的一個重要配置檔案nginx.conf了。

 

2)我們可以看到nginx資料夾內有一個conf資料夾,其中有好幾個檔案,其他先不管,我們開啟nginx.conf,可以看到一段:

 這段程式碼在server裡面,相當於一個代理伺服器,當然可以配置多個。

下面我們仔細來分析一下:

listen:表示當前的代理伺服器監聽的埠,預設的是監聽80埠。注意,如果我們配置了多個server,這個listen要配置不一樣,不然就不能確定轉到哪裡去了。

server_name:表示監聽到之後需要轉到哪裡去,這時我們直接轉到本地,這時是直接到nginx資料夾內。

location:表示匹配的路徑,這時配置了/表示所有請求都被匹配到這裡

root:裡面配置了root這時表示當匹配這個請求的路徑時,將會在這個資料夾內尋找相應的檔案,這裡對我們之後的靜態檔案伺服很有用。

index:當沒有指定主頁時,預設會選擇這個指定的檔案,它可以有多個,並按順序來載入,如果第一個不存在,則找第二個,依此類推。

下面的error_page是代表錯誤的頁面,這裡我們暫時不用,先不管它。

 

那我們知道了具體的配置了,怎麼讓它訪問localhost時轉到tomcat時。實際上就修改兩個地方:

server_name  localhost:8080;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
			proxy_pass http://localhost:8080;
            root   html;
            index  index.html index.htm;
        }

 我們就修改了上面兩個地方,我的tomcat在8080埠,可以根據自己的需要修改。這裡有一個新元素proxy_pass,它表示代理路徑,相當於轉發,而不像之前說的root必須指定一個資料夾。

此時我們修改了檔案,是不是就意思著必須先關了nginx再重新啟動了,其實不必,nginx可以重新載入檔案的。

3)我們直接執行:

nginx -s reload  

如果不想直接載入,而只是想看看自己的配置檔案有沒有問題,可以直接輸入:

nginx -t  

這可以檢查配置檔案中是否有錯。 下面我們所有的修改都假設我們修改完成後運行了nginx -s reload進行重新載入配置檔案,請注意。

一切沒問題了,然後我們再重新開啟www.weixiangming.com,我們看到下面的頁面: