Translate


登入

訂閱

訂閱 %feed-title

FeedBurner ...

 訂閱到閱讀器
FeedBuner計數器


您在這裡

設定 XAMPP 的虛擬主機 ( Virtual Host)

阿舍之前在介紹如何在自己的電腦上重建網站時,有提到路徑的問題,那個時候阿舍的作法是用改 page.tpl.php 及相關範本檔的路徑的方式,可是,阿舍後來在搬另一個網站到阿舍的電腦時,就發生問題了,原來阿舍的網站是放在根目錄,但是,搬到阿舍的電腦時,只能放在 htdocs 下的一個目錄裡,這樣就發生所有路徑都不對的情形了哩 !! ....=_____=!!。

阿舍本來的想法很簡單,就是想找看看有沒有可以變更 Drupal 預設路徑的方法,但是,經過一陣子的努力之後,還是沒有找到這個方式的解決方法,所以,就有點給它 "鬱卒" 的很,一直到去吃了顆糖之後,才突然給它有了個靈感...路不轉人轉,為何不模擬和 Hosting 一樣的環境就好了哩 !? ......-____-!!。

所以阿舍就想說在自己的電腦上設定一個 Virtual Host ( 虛擬主機 ) 來解決這個問題,但是,為什麼用虛擬主機可以解決個問題呢 ? 喔 ! 因為,這樣就可以把原來在 htdocs 下的一個資料夾變成一個網站的根目錄。

註 : 在不久前的古代 ( 或者說是 Dos 的那個年代),現在叫做 "資料夾 ( Folder )" 東西,以前叫做 "目錄 ( Directory )",阿舍是從古早來的人,所以就會有時叫 "資料夾" ,有時叫 "目錄",請各位大德多多見諒哩 ! ...^^!。

舉例來說,阿舍把線上的網站搬到阿舍裡電腦上的 htdocs 資料夾下的 dst 資料夾裡,當開啟 http://localhost/dst 時,就會發生有些檔案因路徑的關係而找不到,所以,阿舍要想辦法讓這個 dst 資料夾變成另一個網站的根目錄,這樣才會和線上的網站一樣,不會發生問題。

在開始說明設定 XAPMM 之前,要先說明一下,由於是要做成一個虛擬的網站,所以,需要有一個網址來對應才行,而待會的設定就會用到,因此,要先來設定一組有網域名稱的網址來給這個 Virtual Host 才行。

如果大德是要轉移網站到不同的主機的話,就要在 DNS 裡設定一組新的網址,但是,如果是和阿舍一樣,只是用來在單獨的電腦上做測試的話,就只要去改 "C:\WINDOWS\system32\drivers\etc" 的 hosts 檔就可以了,修改的方式是新增一個網域的網址對應到 127.0.0.1 這個位址上,而這個網域不需要是宜正有註冊過的,任意的網域都可以的,不過,最好,不要用一些已知網站的網域,否則,會無法連到那些網站的...。

以阿舍為例,阿舍用 drupaltest.soa.tw 來做為個虛擬主機的網址,所以就要在 hosts 檔的最下面,加入下列這一行:

127.0.0.1 drupaltest.soa.tw

加好之後,就把檔案儲存起來,接著就可以進入 XAMPP 的設定工作了。

要在 XAMPP 裡啟用 Virtual Host,似乎是不太難的樣子,只要修改放在 XAMPP 安裝資料夾的 xampp\apache\conf\extra 裡的 httpd-vhosts.conf 檔案即可,修改方式如下:( 以下說明是假設阿舍的 XAMPP 是裝在 C:/xampp/htdocs 裡。)

1. 開啟 httpd-vhosts.conf 檔
請各位大德請用文字編輯器 ( 例如 NotesPad++ ) 開啟在 XAMPP 安裝資料夾的 xampp\apache\conf\extra\httpd-vhosts.conf 檔。

2.新增 Virtual Host 設定
將下列設定值複製後貼到 httpd-vhosts.conf 檔的最下方,並依照附註說明做調整。

NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs"
## 請把 "C:/xampp/htdocs" 改成大德實際安裝的路徑。
ServerName localhost
</VirtualHost>

<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs/dst"
## 請把 "C:/xampp/htdocs" 改成大德實際對應的安裝路徑。
ServerName drupaltest.soa.tw
## 請把 drupaltest.soa.tw 改成在 hosts 檔裡所設的網址。
</VirtualHost>

上面總共有二組,第一組的設定是為了讓原本的 localhost 可以繼續正常運作,所以,要設定一組給 localhost 用,第二組才是真正要設定的項目,這裡,阿舍是用最簡單可以啟用 Virtual Host 的項目來設定,基本來說,只要設定 DocumentRoot 和 ServerName 二兩項即可,不過,還是有其它的設定項目可用,有興趣的大德可以到 Apache 的站上找找...。

3. 重新啟動 XAMPP
阿舍試了一下 ,httpd-vhosts.conf 檔改好之後,似乎是不會馬上生效,所以,阿舍還是把 XAMPP 關閉再重啟後才看有變化的,各位大德還是重啟一下 XAMPP 會比較保險哩 !

4.開啟網站
重啟 XAMPP 之後,就請大德們用 FF 或 IE 來開啟在 hosts 設定的網域來看看,以阿舍為例,就是直接開啟 http://drupaltest.soa.tw,而不是之前的 http://localhost/dst,如果可順利看到網頁,那麼就算成 2/3 了,恭喜 ! 恭喜 ! 請繼續加油囉 !! ^^=。

接下來就是 Drupal 的設定了,由於 setting.php 有記錄 Drupal 所使用的網域,因此,需要修改,不然, Drupal 還是會有問題的,所以就要開啟 setting.php 檔來修改 $base_url 這個變數,把原來 $base_url 的舊網域改成新的,例如, $base_url ="drupatwl.soa.tw",改完就可以存檔了。

在修改 setting.php 之前,要請各位大德注意一下, setting.php 是受保護的檔案,因此都會是在唯讀 ( Read oly ) 的狀態,不能修改,改之前要先去取消它的唯讀設定才行。

上面的步驟都完成後,網址就應該能順利運轉,應該就不會再有找不檔案的情形了。

評價: 

回應

 #

剛好最近原本的WAMPServer改換到XAMPP來。
又剛好有這篇好文章可以參考,謝謝阿舍兄。
**************
Drupal 水隆投

**************
Drupal 水隆投

 
 #

我的很像狗骨頭圖案的那個程式 不是會有 apache 和 mysql 勾選後不是可以跑嘛? 可是不知道我的為什麼兩個就是跑步動 很傷腦筋 都找不到人來解答
拜託你 知道的話告訴我 (有點急)!!!!!

 
Arthur Yu 的照片
 #

Hello 吉娃兄,

阿舍看不太懂哩 ! 請問吉娃兄是用那一套軟體來驅動 Apache 和 MySQL 呢 ? 以阿舍的經驗說,開不起來如果不是因為 Port 80 或 port 3306 被別人佔去了,那就有可能是被防火牆軟體擋住了....。

供參囉 !! ^^=。

阿舍...
阿舍的 Drupal 架站經驗談 - http://drupal.soa.tw

阿舍...
阿舍的 Drupal 架站經驗談
http://drupal.soa.tw

 
 #

阿舍兄,我的apache最近也常常在本機主機上跑不起來,有時候開機可以連(我開機後第一件事是打開https://localhost/),有時候電腦就是不給開,可能隔天開機他又回復正常。
很奇怪的是Port 80 或 port 3306 並沒有程式佔去,而且我試著把防火牆關掉但是他還是跑不出來。
有沒有什麼一勞永逸將他改掉port的方法呢?最近常常發生這種事真的很頭大的說冏
雖然我另外有虛擬空間但還是習慣在本機測試啦OTZ

 
Arthur Yu 的照片
 #

Hell 小王兄,

在 httpd.conf 檔案裡有一行是 Listen 80,把 80 改成 8080 或 88 後存檔,再重開 Apache 就可以了,只是之後網址要改成 http://localhost:8080http://localhost:88 才連的到哩 !

另外,請問小王兄有啟用 SSL 嗎 ? 阿舍看小王兄打的網址是 https ,所以確認一下。

供參囉 !! ^^=。

阿舍...
阿舍的 Drupal 架站經驗談 - http://drupal.soa.tw

阿舍...
阿舍的 Drupal 架站經驗談
http://drupal.soa.tw

 
 #

給阿舍兄 :
聽了您的意見我改了一下port,目前為止還沒有開不了主機端的情況發生,所以先謝謝阿舍兄了OUO

如果還有問題再來請教您,非常謝謝!

 
 #

結果跟我預期的一樣我的主機要是重開機以後就沒辦法開主機上架的drupal了,跟改prot好像沒有關係OTZ

我的SSL都有啟動而且防火牆沒有檔住才是,請問阿舍大還有什麼原因會造成 Apache 打不開呢?

現在都要碰運氣才能打開真讓人泄氣OTZ還是我該重新安裝比較好?

 
Arthur Yu 的照片
 #

Hello 小王兄,

阿舍暫時也想不到什麼原因,不過看來比較不一樣的就只有 SSL,阿舍建小王兄把 SSL 停用看看,等問題排除了再來啟用哩 !

供參囉 !!

阿舍的 Drupal 架站經驗談
http://drupal.soa.tw

阿舍...
阿舍的 Drupal 架站經驗談
http://drupal.soa.tw

 
 #

今日一樣又被localhost傲嬌了OTZ

補上圖片如果阿舍兄有空的話再請幫忙喔~~~~~真是不好意思~~~

http://img706.imageshack.us/img706/5493/46374528.png

 
 #

用户注册Drupal网站很麻烦,注册以后没功能也很纠结。总感觉Drupal还是不太适合

 

頁面

增加新的回應

此欄位內容將保密,不會公開顯示出來。

Plain text

  • 不允許使用 HTML 標籤。
  • 自動將網址與電子郵件位址轉變為連結。
  • 自動斷行和分段。
CAPTCHA
這個問題是要驗證您是不是一個人類訪客,以防止這個網垃被自動化程式貼入大量的垃圾資訊。
圖片的 CAPTCHA
Enter the characters shown in the image.
Drupal theme by pixeljets.com D7 ver.1.1