2020-04-02 03:32:06katierdy3

ApacheVirtualHost多網域網站放置在同一台主機

4K輸出 三維智能 品牌行銷 SEO系統維護 影像輸出 AI三維科技

 在 Apache 上設定 VirtualHost 是牙齒掉下來然後又腐化掉的問題,但這問題又久久才會處理一次,剛不小心出了一點小問題,於是稍微記錄一下提醒自己。

設定 VirtualHost 目的是使用同一個伺服器架設多個網站,當使用者以不同網域名稱連到該主機時, web server 會依據不同的目的網頁需求,回應不同的網頁內容。

-----------------------------------------------------------------------------------------

基本的說完,底下來看怎麼設定 Virtual Host

Step 0:DNS 主機設定多個網域名稱對應到同一台主機
Step 1:修改 /etc/httpd/conf/httpd.conf
Step 2:重新啟動 httpd 測試
Step 3:更好的作法
--------------------------------

Step 1:修改 /etc/httpd/conf/httpd.conf
sudo vi /etc/httpd/conf/httpd.conf

當你單一網站的 apache 設定好後,你的 /etc/httpd/conf/httpd.conf 便可以正確的指定到你第一個網頁的 DocumentRoot ,而在 httpd.conf 的最底下會有 Virtual Host 設定的相關提示

意即要開啟 Virtual Host 功能只要將範例的參數(底下標示粗體斜體字)改成你的環境參數就OK了

底下例子以上面綠底圖範例作說明 www.n.com 為第一個網站a.n.com 為第二個增加的網站

NameVirtualHost *:80
<VirtualHost *:80>
    ServerAdmin webmaster@a.n.com
    DocumentRoot /www/docs/n/a
    ServerName a.n.com
    ErrorLog logs/a.n.com-error_log
    CustomLog logs/a.n.com-access_log common
</VirtualHost>

QQ:那我犯的錯誤在哪?
Ans:原本的 httpd.conf 設定只要綁定 IP:port 跟預設的 DocumentRoot 就能呈現你第一個原始的網站,即使你 ServerName 不改都能正常的運作。
但是~~啟用 virtualhost 後,他是以使用者要求的網域名稱來判斷該回應哪個網頁內容回去
所以~~你必須也寫一段原本網頁的 VirtualHost 片段
如果~~漏了這步驟,只有指定 virtual host 的網站才能呈現,原本的網站網址會出現 Internal Server Error
於是~~要多寫一段關於原本網頁的 virtual host

<VirtualHost *:80>
    ServerAdmin webmaster@www.n.com
    DocumentRoot /www/docs/n
    ServerName www.n.com
    ErrorLog logs/www.n.com-error_log
    CustomLog logs/www.n.com-access_log common
</VirtualHost>

再加入第三個網站,只需要再增加 xx.n.com 的 virtualhost 片段即可

<VirtualHost *:80>
    ServerAdmin webmaster@xx.n.com
    DocumentRoot /www/docs/n/xx
    ServerName xx.n.com
    ErrorLog logs/xx.n.com-error_log
    CustomLog logs/xx.n.com-access_log common
</VirtualHost>

Step 2:重新啟動 httpd 測試
sudo service httpd restart

 

Step 3:更好的作法

在 /etc/httpd/conf/httpd.conf 裡增加專屬於 virtualhost 的設定檔,並且 include 近來

sudo vi /etc/httpd/conf/httpd.conf
# Virtual hosts
Include conf/extra/httpd-vhosts.conf

sudo vi /etc/httpd/conf/extra/httpd-vhosts.conf  預設可能沒有這個檔案,要自行增加

然後把上面字體「藍色字」的設定部分,全部移動到這個檔案中,然後重新啟動就搞定了~~
sudo service httpd restart

 

~End

AR全息投影 SEO網站優化 三維智能 大心國際 動畫設計 AR廣
回應
關鍵字
Google Search
Google
累積 | 今日
loading......
平均分數:0 顆星
投票人數:0
我要評分:
Google


文章來自: https://blog.xuite.net/tolarku/blog/485166953-Apache+Virtual+Host+%E5%A4%9A%E7%B6%B2%E5%9F%9F%E7%B6%

你可能感興趣的文章

碧海喋血 64

坎特沒有崩潰。從被押上車到被關押進曼哈頓聯邦看守所的單獨囚禁室他只一再重複著要見律師的要求。也是因為他已作出了需要有律師在場

9 小時前

統一發票113年7-8月開獎! 35元買麵包幸運中千萬 7-11開出4張千萬、2張200萬

https://tw.news.yahoo.com/%E7%B5%B1%E4%B8%80%E7%99%BC%E7%A5%A8113%E5%B9%B47-8%E6%9C%88%E9%96%8B%E7%8D%8E%EF%BC%81-35%E5%85%8

3 小時前

想說

不一定不去柬埔寨緬甸才沒事,我曾用福音武器挑戰詐團,引來他們親口指想殺我,所以,不方便露面。

14 小時前

20240922糖醋醃薑

20240922糖醋醃薑 水薑已經過了正期......... 撿了便宜來做醋薑.......... 切下枝椏刷洗乾淨.......... 大致剖切成長條狀

2024-09-25