Linux筆記(65) nginx虛擬主機配置

2021-07-10 16:33:11 字數 2057 閱讀 6091

關於虛擬主機的概念,在之前的部落格中有講到,這裡不再闡述,請參考linux筆記(59)——apache虛擬主機配置

大家應該都知道虛擬機器,在我們真實電腦上,可以安裝多個虛擬機器。而所謂的虛擬主機,也類似與虛擬機器的概念,只是它並不用真的安裝乙個什麼東西,只是從邏輯上將一台伺服器分出多個子伺服器。

而基於ip的虛擬主機,就是我們將乙個網絡卡,分出多個子網絡卡。這裡的子網絡卡,體現在ip位址不同。然後我們通過訪問這些不同的ip位址,達到訪問不同專案的目的,進而實現了「虛擬主機」。

配置ip;

配置完成後,可以使用ifconfig檢視

然後進入nginx的conf目錄,建立乙個vhost.conf,內容如下:

需要一提的是,這裡listen的是ip加埠號,而不是埠

其中乙個主機的專案所在目錄是nginx目錄下的html/video,另乙個是html/bbs,然後我們分別建立這兩個目錄,並在目錄下建立index.html。

啟動nginx,啟用我們剛剛建立的配置檔案(不使用預設的配置檔案nginx.conf)

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/vhost.conf
然後看看效果

基於ip的虛擬主機是根據ip的不同,接入不同的虛擬主機。而基於網域名稱的,則是根據網域名稱的不同。比如video.zhoujun.com訪問video目錄,bbs.zhoujun.com反問bbs目錄

配置及其簡單,只需要使用以下配置:

然後nginx即可,一般生產環境都是基於網域名稱來實現的。

本人在測試的時候,發現在配置了基於網域名稱的虛擬主機之後,訪問之前的虛擬ip居然還能正常訪問到我們的頁面,後來想明白了,應該是由於我們配置的虛擬ip都是在同乙個網絡卡下,所以本質上都是訪問同乙個網絡卡,所以都能訪問到我們的伺服器

只要將之前配置的虛擬ip刪除,就無法通過虛擬ip訪問了。刪除命令如下:

ip

addr

del 192.168

.0.106

deveth0

:1

結合本文與linux筆記(65)——nginx**tomcat,配置出虛擬主機**tomcat

例如我們在tomcat下部署了兩個專案:video和bbs,然後進行如下配置:

以上配置含義:如果訪問video.zhoujun.com,那麼就是訪問http://localhost:8080/video。bbs也是同理。

注意:proxy_pass http://localhost:8080/video/,此處一定要以/結尾,否則會報迴圈重定向的錯誤

nginx在linux安裝筆記

1.2.安裝目錄在usr local下 安裝openssl 1.0.1t.tar.gz tar zxvf openssl 1.0.1t.tar.gz mv openssl 1.0.1t openssl cd openssl config prefix usr local openssl make m...

Nginx學習筆記 linux上安裝Nginx

準備環境 centos7 帶圖形介面 安裝gcc gcc c yum install y gcc gcc c 安裝pcre庫 cd usr local wget tar zxvf pcre 8.36.tar.gz cd pcre 8.36 configure make make install co...

linux下nginx安裝教程 筆記2

檢視系統版本 cat etc redhat release 我的系統版本centos linux release 7.8.2003 core 去nginx官網上找相關的rpm包 安裝rpm ivh nginx 1.18.0 1.el7.ngx.x86 64.rpm檢視安裝位置whereis ngin...