一臺伺服器上放多個網站,每個網站的域名都不一樣,並且都是通過80埠開放出去,該如何做?


我曾經使用過nginx,可以解決這個需求。

這裡有一個不同域名綁定的例子:nginx配置:server_name的作用_運維_Kevin的博客-CSDN博客 ,就可以讓不同的網站用不同的域名來訪問了。

  • 一般我們都用wsgi進行應用的部署,這裡有一個django的nginx+wsgi配置的例子:Django之nginx+wsgi部署_運維_GYT0313-CSDN博客 ,只要在這裡多配置幾個server就行了。

server name 為虛擬伺服器的識別路徑。因此不同的域名會通過請求頭中的HOST欄位,匹配到特定的server塊,轉發到對應的應用伺服器中去。

(上面的引用以及conf代碼圖都來自於nginx配置:server_name的作用_運維_Kevin的博客-CSDN博客 )

另外,如果你不懂nginx的配置的話,這裡有nginx的一個教程:Nginx教程(入門篇) ,在配置的時候需要選擇每一個配置項的域名,這時候就可以通過不同的配置項來配置不同的域名了。

server_name就是在上面這個位置 。


很簡單,在你的伺服器上安裝寶塔面板,然後點擊左側「網站」-「添加站點」,安裝步驟操作就行。不懂可以看這篇

許你一生繁華:一臺伺服器上如何創建多個網站??

zhuanlan.zhihu.com圖標


現在有很多伺服器管理軟體,如:linux系統的寶塔面板、WDCP面板等,windows系統的phpstudy、wampsever等,都可以滿足題主的這種需求。

以linux伺服器上專用的寶塔面板為例,你只需要在伺服器安裝寶塔面板(安裝方法參考:寶塔Linux面板安裝教程),然後在寶塔面板的後臺可以添加多個網站,每個網站都可以綁定各自的域名,並且都是共同使用80埠,具體方法請參考:寶塔面板怎麼創建網站?寶塔伺服器管理系統創建網站教程。


nginx有servername 可以區分host頭 ,apache有virtualhost 同樣可以區分host頭。

沒個http請求頭都帶有host,比如我訪問百度,host就是百度,http服務收到這個頭之後就知道你訪問的是哪個目錄了。


這個問題很基礎,使用任何一個 WEB伺服器都可以解決.

看起來題主對技術不是很瞭解,那建議使用 WINDOWS 下的IIS 作為WEB網站伺服器.

你可以用IIS建很多的網站,單獨給每個網站綁定獨立的域名.埠都用默認的80.

具體的隨便搜索一下,教程很多.

正式運營建議使用WINDOWS SERVER 系統,你自己測試的話用 WINDOWS 10上的IIS測試也可以.


推薦閱讀:
相關文章