1. 程式人生 > >【學習點滴-php】配置多個虛擬主機,很簡單,但是很實用

【學習點滴-php】配置多個虛擬主機,很簡單,但是很實用

原文:http://www.cnblogs.com/catprayer/archive/2010/10/30/1865308.html

如何使用 Apache 在本地配置出多個虛擬主機呢?而且使用不同的“域名”來訪問本地不同的站點呢?

一般情況下,咱們都使用 localhost 來訪問本機上的伺服器,在我們的 C:/WINDOWS/system32/drivers/etc/hosts 檔案中預設有一個:

127.0.0.1       localhost

當我們在瀏覽器位址列鍵入:

http://localhost

的時候,會顯示出伺服器根目錄中的許多資料夾(若你的根目錄不是隻有一個站點的話),就像:

Index of /

    * BAK/
    * B_Discuz/
    * B_Supesite/
    * B_UCenter/
    * B_Uchome/
    * B_Uchome_Bak/
    * B_XSpace/
    * DiscuZ_X1/
    * Javascript/
    * NewUch/
    * PHP/
    * UchUtf8/
    * Zend Framework_1.10.8/
    * Zendphpweb20/
    * mycms/
    * phpMyAdmin/
    * userAdminManager/

現在我想通過一個自定義的“域名”來訪問我的根目錄中的站點,譬如:

1,根目錄中有一個 phpMyAdmin/ 的資料夾(倒數第二個),它是一個網頁版的資料庫管理系統(肯定不會陌生的吧!),我想通過訪問一個簡單的:

來進入這個系統(而不用輸入 localhost,再點選 phpMyAdmin/ 才進入);

2,根目錄中有一個 Zendphpweb20/ 的資料夾(倒數第三個),它只是一個本地應用站點,我想通過訪問:

來進入這個本地站點;

現在要幹些什麼呢?跟我來吧!看下面:

1> 修改系統的 hosts 檔案:

開啟之前說過的系統的 hosts 檔案,來給我們的電腦新增兩個“假的”DNS 項,加入程式碼:

127.0.0.2       dbmanager
127.0.0.3       phpweb20

這樣,我們的瀏覽器就會將 dbmanager 主機名解析為 127.0.0.2,將 phpweb20 主機名解析為 127.0.0.3。

2> 修改 Apache 配置檔案:

在我的本機內 Apache 的主配置檔案在:

D:/usr/local/apache2/conf/httpd.conf

說是修改 Apache 的配置檔案,其實只是添加了一些內容,因為不想修改 Apache 的主配置檔案,所以我們最好在各個站點寫好自己的虛擬主機配置子檔案,然後使用 Include 指令將其包含到 Apache 的主配置檔案裡。

其實在 Apache 的主配置檔案的最下方有虛擬主機的配置示例,只不過都被註釋掉了:

# 基於名稱的虛擬主機示例:
#<VirtualHost127.0.0.2:80>
 #   ServerAdmin [email protected]
 #   DocumentRoot D:\usr\webroot\webhosting1
 #   ServerName 127.0.0.2
 #   ErrorLog logs/dummy-host.example.com-error_log
 #  CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHost>

#<VirtualHost127.0.0.3:80>
 #   ServerAdmin [email protected]
 #   DocumentRoot D:\usr\webroot\webhosting2
 #   ServerName 127.0.0.3
 #   ErrorLog logs/dummy-host.example.com-error_log
 #  CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHost>

#<VirtualHost127.0.0.4:80>
 #   ServerAdmin [email protected]
 #   DocumentRoot D:\usr\webroot\webhosting3
 #   ServerName 127.0.0.4
 #   ErrorLog logs/dummy-host.example.com-error_log
 #  CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHost>

在配置檔案的最下方新增程式碼:

# 包含 dbmanager 虛擬主機配置檔案
Include D:/usr/webroot/phpMyAdmin/httpd.conf
# 包含 phpweb20 虛擬主機配置檔案
Include D:/usr/webroot/Zendphpweb20/httpd.conf

(我的 localhost 的根目錄為 D:/usr/webroot/)

3> 建立各個虛擬主機的子配置檔案:

建立 dbmanager 的配置檔案:D:/usr/webroot/phpMyAdmin/httpd.conf

#dbmanager 虛擬主機設定
<VirtualHost127.0.0.2:80>
    ServerName dbmanager
    DocumentRoot D:/usr/webroot/phpMyAdmin

    <DirectoryD:/usr/webroot/phpMyAdmin>
        AllowOverride All
        Options All
    </Directory>
</VirtualHost>

建立 phpweb20 的配置檔案:D:/usr/webroot/Zendphpweb20/httpd.conf

#phpweb20 虛擬主機設定
<VirtualHost127.0.0.3:80>
    ServerName phpweb20
    DocumentRoot D:/usr/webroot/Zendphpweb20/htdocs

    <DirectoryD:/usr/webroot/Zendphpweb20/htdocs>
        AllowOverride All
        Options All
    </Directory>

    #修改 PHP 配置(可選)
    php_value include_path .;D:/usr/webroot/Zendphpweb20/include;D:/usr/local/php5/PEAR
    php_value magic_quotes_gpc off
    php_value register_globals off
</VirtualHost>


各個虛擬主機的配置就看應用站點的不同需要了,DocumentRoot 為其根目錄(php_value 是修改此站點的 PHP 執行引數,根據自己應用的需要來寫,這樣就不必修改 PHP 主配置檔案)。

4> 重啟 Apache 服務:

這個就不多說了。

完畢!好了,在瀏覽器位址列輸入分別輸入:

我們的目的達到了!!: - >

相關推薦

學習點滴-php配置虛擬主機簡單但是實用

原文:http://www.cnblogs.com/catprayer/archive/2010/10/30/1865308.html 如何使用 Apache 在本地配置出多個虛擬主機呢?而且使用不同的“域名”來訪問本地不同的站點呢? 一般情況下,咱們都使用 localhost 來訪問本機上的伺服器,在我們

技術小記 | 伺服器Linux環境下Apache2配置虛擬主機

歡迎大家訪問我的個人部落格:吳佳軼 | WuJiaYi,第一時間獲取最新的文章。 多域名訪問同一主機 從去年開始就一直維護著目前的這個技術部落格,前不久突然想搭建一個與技術無關的個人網站,釋出一些生活上的好玩趣事、釋出一些自己的攝影作品。新域名備

學習點滴-phpstatic關鍵字---延遲靜態繫結

首先是這樣一組程式碼: abstract class User{ } class Admin extends User{ private $group; public static function create(){ retur

MAC為Apache2服務器配置虛擬主機

就是 配置虛擬主機 apach 目錄 重要 res 主機名 技術 onf MAC為Apache2服務器配置多個虛擬主機 當我們在做項目的時候有時候有時候需要同時操作多個項目,但是apache服務器默認值只提供一個根目錄,這時候就比較麻煩了,我們可以通配置多個虛擬主機來實現這

Apache配置虛擬主機

準備工具:Apache  下載連結:https://www.apachelounge.com/download/ 第一步:先在本地建立文字根目錄 第二步:將Apache解壓到全英文目錄,然後點選那個最亮的圖示,開啟: conf-->httpd.conf檔案 第三

關於阿里雲配置LAMP和配置虛擬主機

安裝apache2.4 因為centos6.8的yum中預設是apache2.2的所以需要升級yum源 可參考:centos安裝apache2.4 第一次service httpd start啟動會報錯:修改成以下 276 #ServerName

Linux環境下Apache配置虛擬主機

這樣一種場景;我們有一臺伺服器;但是想掛多個網站;那麼Apache下配置虛擬主機可以滿足這個需求; 比較簡單的是基於主機名的配置步驟如下: 示例環境     ip:115.28.17.191     域名:baijunyao.com           thin

Linux環境下Apache配置虛擬主機掛載站點同時執行

這樣一種場景;我們有一臺伺服器;但是想掛多個網站; 那麼Apache下配置虛擬主機可以滿足這個需求; 比較簡單的是基於主機名的配置步驟如下: 示例環境 ip:115.28.17.191 域名: b

mac 下 nginx 配置虛擬主機

我是通過homebrew 安裝nginx 的,所以安裝目錄是預設的,之前多個server都是放在預設安裝目錄下的nginx.conf裡的,但是這樣不太好,就是會導致nginx.conf 越來越長,而且容易出現一些大括號缺失啥的類似的語法錯誤。看了下老大配的虛擬目錄感覺不錯,自

PHP從2字串找到相同的部分展示最長的字串

思路: 最容易想到的方法,是把第一個字串按順序擷取,與第二個字串對比,存在則寫入陣列,最後再從陣列找到重複之中最長的那個輸出 字串1:/a/b/c/?.oietr?e/f/g/zwty.cn 字串2:/a/b/c/awp.neeg/e/f/g/zxtn.cc $str1 = '/a/b/c/?

8086彙編-Day7關於段的程式的實驗

實驗一 實驗二 實驗三 實驗四 實驗五 實驗六 總結 在整合環境下,記憶體從0770段開始按照段的先後順序和內容多少分配,並且分配的都是16的倍數 關於實際佔用的空間公式的話其實極容易想到(假設有N個位元組資料),N+15是為了判斷最後幾個位元組

PHP study2014 配置站點(主要是修改 vhosts.conf檔案然後重啟。)

主要是修改 vhosts.conf檔案和httpd.conf檔案,然後重啟。 httpd.conf檔案:【注意補充埠】 #Listen 12.34.56.78:80 Listen 8089 Listen 9001 Listen 9002 Listen 9003 Liste

在LNMP環境下創建虛擬主機時出現nginx無法解析php文件故障

php nginx 下載 問題描述: 搭建的LNMP環境運行php文件時,每次通過瀏覽器打開總是直接將文件下載到本地,而無法通過瀏覽器正常顯示,而對於html文件則可以正常使用。 具體配置如下: location ~ \.php$ { r

Tomcat 虛擬主機配置方法

conf/server.xml 移除註釋內容後,類似內容如下: <Server> …… …… …… <Service name="Catalina"> <Connector port="8080" protocol="HTTP/1.1"

Apache虛擬主機配置

1.以後操作用到很多虛擬主機的操作,將獨立的配置檔案開啟,並設定虛擬主機的配置   2.將host檔案中的域名修改為迴環地址127.0.0.1,注意將修改工具如sublime先用管理員許可權進行開啟,再修改檔案不然無法儲存。   3.完成一個虛擬

centOS6配置Apache基於域名的虛擬主機

centOS6下配置Apache的虛擬主機: 1、#vim /etc/httpd/conf/httpd.conf 編輯#NameVirtualHost *:80為NameVirtualHos

tomcat配置虛擬host訪問不同的web專案

      想要在一個tomcat下訪問兩個web專案時,可以通過新增虛擬host的方式來解決。       詳細步驟如下:        1、將兩個專案打包放入tomcat的webapps目錄下;         2、修改tomcat的server.xml檔案,原來的程式

tomcat 配置虛擬域名訪問

為了使得同一個tomcat下部署不同的專案,即使專案中工程同名。則需要在其配置檔案sever.xml中增加Host選項,以匹配不同的域名。 1、增加虛擬域名,window上修改host檔案 C:\Windows\System32\drivers\etc\hosts   樣例

如何在一個MyEclipse配置Tomcat系列的應用伺服器同時執行。

1、我下載了兩個版本的Tomcat8.X的,一個Tomcat8.0.17和Tomcat8.0.20。 2、分別更改對應目錄下的server.xml。 第一處要改的地方: <Server port="8005" shutdown="SHUTDOWN">

JAVA習題六輸入兩正整數m和n求其最大公約數

import java.util.Scanner; public class Oujilide歐幾里得 { public static void main(String[] args) { // TODO Auto-generated method stub Scan