本地通過域名訪問虛擬機的網站部署方法(Nginx)

首先聲明:以下內容是我的個人理解,經過實踐配置訪問成功的案例

目的:自定義一個域名如:swoole.cn,我們通過本地瀏覽器訪問swoole.cn,能訪問到虛擬機裏的網站(對應的目錄文件)

步驟:

  1. 配置本地hosts
  2. 虛擬機安裝Nginx
  3. 配置虛擬機hosts
  4. 配置nginx.conf
  5. 配置vhosts.conf
  6. 重載配置Nginx

思路:瀏覽器中輸入一個域名回車後,它會先解析域名(也就是找到對應的ip),查詢過程爲:

  1. 查詢緩存記錄
  2. 查詢本地hosts文件 
  3. 向dns服務器去查找

 假設swoole.cn解析爲ip沒有緩存記錄,那麼瀏覽器就會查詢本地hosts文件(C:\Windows\System32\drivers\etc),所以

第一步:配置本地hosts文件,在末尾加上一行域名解析

192.168.116.130 swoole.cn

注:192.168.116.130是你虛擬機配置的ip,ip與域名之間有一個空格隔開;hosts文件可能會被設置爲“只讀”(保存無效果),可以右鍵文件-》屬性-》常規,把下方的“只讀”去掉

至此,本地瀏覽器訪問swoole.cn就會訪問到你的虛擬機,可是虛擬機接收到請求,但還不知要幹嘛。所以需要安裝配置Nginx

第二步:虛擬機安裝配置Nginx(已安裝配置可跳過),我的只是簡單的安裝

  1. http://nginx.org/:找一個穩定版的安裝,我當時裝的是:nginx-1.16.1
  2. 下載下來的文件是:nginx-1.16.1.tar.gz格式,所以需要用命令# tar - zxvf nginx-1.16.1.tar.gz解壓
  3. cd進入解壓後的文件目錄
  4. 配置:# ./configure --prefix=/usr/local/nginx 
  5. 編譯:# make
  6. 安裝:# make install

詳細安裝及依賴包參考:https://www.runoob.com/linux/nginx-install-setup.html

# cd /usr/local/nginx/sbin

# ./nginx -v:查看版本

# ./nginx -t:檢查配置文件nginx.conf的正確性。(我這裏並沒有按着網上搜的配置nginx.conf,也是能檢測正確的)

# ./nginx:開啓Nginx

附:

# ./nginx -s reload:重新載入配置文件

# ./nginx -s reopen:重啓Nginx

# ./nginx -s stop:停止Nginx

第二步完成後,本地瀏覽器通過ip訪問,可能還是訪問不了,這時,我們需要開放防火牆的http服務

# firewall-cmd --permanent --add-service=http

這時訪問ip就會顯示Nginx的歡迎頁面,恭喜你安裝成功!!

但是,想通過域名訪問的話,還需要以下的配置

第三步:配置虛擬機的hosts文件(/etc/hosts),在末尾增加一行

127.0.0.1 swoole.cn

這就告訴虛擬機,當有swoole.cn這個域名請求的話,就是找你(自己) 

接下來的步驟是部署網站:

第四步:配置nginx.conf文件(/usr/local/nginx/conf),在http節點增加一行

include vhost/*.conf;

意思是,/usr/local/nginx/conf/vhost下面的所有以.conf結尾的文件都會加載,這樣我們就可以把所有虛擬主機配置文件放到vhost目錄下面

第五步:進入vhost目錄下新建虛擬主機配置文件,並配置

# cd /usr/local/nginx/conf/vhosts:

# touch vhosts.conf:新建vhosts.conf,文件名可自定義,一般爲域名,我這裏取vhosts.conf

# vim vhosts.conf

按“i”轉爲編輯模式,插入

server {
        listen  80;// 端口
        server_name swoole.cn;// 自定義的域名
        root "/www/swoole_mooc";// 網站目錄
        index  index.html index.htm index.php;// 默認訪問文件
}

 按“:”轉爲命令模式,輸入wq,保存退出

第六步:重新加載配置文件

# cd /usr/local/nginx/sbin

# ./nginx -s reload:重新加載配置文件

最後就可以通過域名訪問到虛擬機部署的網站,以及所指定的目錄文件了!!

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章