徐耀燕
我們都知道,服務器是專門用來提供某種服務的計算機,最為常見的就是網站服務器(也稱Web服務器)。隨著現在雲計算的發展,個人站長越來越多,出於成本考慮很多時候需要把多個站點部署在同一臺服務器上,然後用不同的域名訪問,能不能實現呢?
答案是肯定能實現的,因為現在主流的Web容器都支持多站點綁定。
網站服務器不光光是指硬件設備
很多人想當然的覺得網站服務器是硬件設備(通俗說就是更專業點的電腦),其實在IT界,網站服務器即指硬件也指軟件。
站在硬件角度講,網站服務器就是一臺電腦設備;
站在軟件角度講,網站服務器是一種服務程序,是用來管理站點的,這類的程序也被稱為“Web容器”或“Web服務器”。
Web容器是啥?
所謂的Web容器是運行在服務器系統上的一個程序,往往對應服務器上的一個端口(如80),Web容器作用就是用來管理站點及處理客戶端請求的。
主流的Web容器很多,不同編程語言要部署在不同的Web容器下,最常見的有:
Java網站:Tomcat、JBoss
ASP網站:IIS
PHP網站:Nginx、Apache
Web容器都支持多站點綁定,靠主機頭和端口號來定位網站
以上所列的Web容器都支持多個站點綁定,將多個站點所使用的域名都解析至同臺服務器IP上,然後在Web容器裡新建多個站點,不同的站點綁定不同的主機頭/主機名(域名)即可。
舉例說明一下:
1、IIS
打開IIS後可以新建多個站點,多個站點綁定不同的域名即可。
2、Nginx
Nginx多個站點修改配置文件中的server配置節中的server_name參數,綁定不同域名即可。
注意:如果Web容器中存在多個站點,要避免多個站點使用相同的域名+端口,或多個空主機頭都使用了80端口的情況。
網絡圈
直接用nginx,您可能有多個原因要在單個服務器上託管多個網站。如果使用的是專用服務器/ VPS,並且想在一個單獨的域和一個服務器上託管多個應用程序,那麼您將需要在一個服務器上託管多個網站。你可以使用Apache / Nginx虛擬主機來實現。虛擬主機允許您使用單個VPS來託管所有域。因此,使用虛擬主機在單個VPS服務器上託管多個網站是降低主機成本的最佳解決方案。
配置Nginx託管多個網站
在本節中,我們將向您展示如何在具有Nginx Web服務器的單個Ubuntu VPS上託管兩個名為web1.webdock.io和web2.webdock.io的網站。
創建目錄結構
首先你要檢查nignx是否安裝,您可以使用以下命令檢查Nginx服務器狀態:
systemctl status nginx託管多個網站的最佳方法是為每個網站創建一個單獨的文檔根目錄和配置文件。因此,您將需要為Nginx Web根目錄內的兩個網站創建目錄結構:
為此,請對每個網站運行以下命令:
mkdir /var/www/html/web1.webdock.io mkdir /var/www/html/web2.webdock.io接下來,您將需要為每個網站創建示例網站內容:
首先,為web1.webdock.io網站創建一個index.html文件:
nano /var/www/html/web1.webdock.io/index.html添加以下html內容:
保存並關閉文件。接下來,為web2.webdock.io網站創建一個index.html文件:
nano /var/www/html/web2.webdock.io/index.html添加以下html內容:
保存並關閉文件。然後將兩個網站目錄的所有權都更改為www-data:
chown -R www-data:www-data /var/www/html/web1.webdock.io chown -R www-data:www-data /var/www/html/web2.webdock.io
nignx配置
接下來,您將需要為每個網站創建一個配置文件,以指示Nginx Web服務器將如何響應各種域請求。首先,為web1.webdock.io網站創建一個虛擬主機配置文件:
nano /etc/nginx/sites-available/web1.webdock.io.conf添加以下內容:
保存並關閉文件。然後,為
web2.webdock.io
網站創建配置文件:nano /etc/nginx/sites-available/web2.webdock.io.conf同樣也添加以下內容:
最後,重新啟動Nginx服務以應用配置更改:
systemctl restart nginx測試您的網站
現在,打開您的Web瀏覽器,然後輸入URL http://web1.webdock.io和http://web2.webdock.io。您應該看到兩個網站都包含我們之前創建的內容:
web1
web2
就只需要執行完上述這些流程,如何在一個服務器上放兩個網站,分別用不同的域名的問題就完美解決,你還可以橫向建多個nginx配置文件,就可以放更多網站和域名。
<strong>
我是沐叔
服務器一般分為Windows服務器和Linux服務器,而Windows服務器操作比較直觀這裡就不針對問題展開說明,這裡重點說一下Linux服務器放兩個網址分佈用不用的域名訪問。
其實,如果你懂得Linux服務器配置的話還是非常簡單的,這裡假設你是服務器新手,所以強烈建議你先安裝寶塔Linux面板,具體可參考『阿里雲 Linux 服務器安裝寶塔 Linux 面板圖文教程』和『騰訊雲Linux服務器如何安裝寶塔面板?』。
安裝好寶塔Linux面板之後,不管是在服務器上放1個網站還是2或無數個,操作方法都是一樣的,都可以登錄到寶塔Linux面板 >> 網址 >> 直接添加站點。具體可參考『寶塔linux面板創建站點添加網站詳細教程』。
寶塔Linux面板添加網站步驟如下:
1、登錄寶塔 Linux 面板 >> 網站 >> 添加站點,具體如下圖所示:
2、填寫站點域名;FTP 可以選擇創建,然後就會得到 FTP 的賬號和密碼;數據庫也可以選擇創建,建議選擇 MySQL,然後就會得到數據庫的用戶名和密碼;其他選項保持默認即可,然後點擊『提交』按鈕,具體如下圖所示:
3、成功提交之後就能成功創建站點,如果選擇創建 FTP 和數據庫的話就會顯示這兩者的用戶名和密碼等信息,建議截圖或直接複製粘貼保存到本地記事本中。具體如下圖所示:
4、可以通過 FTP 或者寶塔的文件管理功能進入到 wwwroot 目錄上傳相應的建站程序或源碼進行創建站點即可。
添加第2或第3個網站的操作辦法是一樣的,重複以上操作即可。
懿古今
最佳答案:裝個寶塔控制面板。
那些字多固然說的沒錯,但是別人都問這個問題了肯定是小白中的小白,你們回答那麼多字有啥用,別人看一遍就會玩了?
樓上升官樓下發財
用虛擬主機管理系統 網上有很多免費的 例如寶塔面板 n點主機管理系統 西部數碼主機管理系統等等 如果有一點技術含量直接用apache 或者nagix phpstudy等
熱愛分享的大叔
可以配置,不難。
尹先生生生
所有支持virtualhost功能的都可以,綁定servername
用戶8444232700160
裝個寶塔,簡單的很