IP、Apache虛擬主機配置部分學習筆記
IP地址
IP地址就是計算機的一個“編號”,該編號是唯一的。相當於我們的身份證號碼一樣。
IP地址格式:a.b.c.d ,每一段的取值範圍0-255。
本機的IP地址:127.0.0.1 只能是自己訪問自己,別人無法通過這個IP訪問你的電腦。
本機的域名:localhost 只能是自己訪問自己,別人無法通過這個域名來訪問你的電腦。
別人要想訪問你的電腦,必須通過網卡的IP地址來訪問。
nslookup www.baidu.com 命令窗口查看域名對應得IP地址
域名(Domain Name)
在互聯網上的計算機之間的互訪,只識別IP地址的訪問,不能直接識別域名的訪問。
IP--------DNS------域名
因為IP地址沒有規律,不好記,因此有人就發明了一個“域名”的東西。
“域名”就是用幾個符號,來表示一臺主機,方便記憶。如:www.baidu.com baidu是域名
最大的域名商:萬網(net.cn)、新網、西部數據、息壤等。
域名解析系統(DNS)
DNS Domain Name System 域名管理系統、域名解析系統。
DNS的主要目的:是將域名轉換成IP地址。
DNS服務器:安裝了DNS軟件的電腦。 DNS服務器主要工作擔負域名解析的任務。
Apache服務器:安裝了Apache軟件電腦。
郵箱服務器:安裝了郵箱服務器的電腦。
FTP服務器:安裝了FTP軟件的電腦。
本地DNS——hosts文件
文件路徑:C:\Windows\System32\drivers\etc\hosts
hosts文件是一個隱藏文件,沒有擴展名。
提示:如果你想訪問某些網站速度加快的解決辦法:就是直接在hosts文件列入對應的IP地址和域名。
PHP網頁工作原理
Apache服務器簡介
Apache是當前最流行的服務器之一,占60%的市場份額。
常用的服務器:Apache(PHP、Java)、IIS(ASP、ASP.NET)
phpStudy的安裝
安裝路徑:C:\Program Files (x86)\phpStudy
網站根目錄:E:\www
註意:安裝路徑上不能出現中文,PHP文件的命名都不能是中文。
phpStudy目錄結構
phpMyAdmin數據庫管理的網頁程序路徑:E:\www\phpMyAdmin
phpMyAdmin的賬號:用戶名和密碼都是root
Apache啟動和停止方法
第一種方法:任務管理器
路徑:計算機——右擊——管理——服務
第二種方法:在CMD模式下啟動Apache和MySQL
路徑:開始菜單——運行——輸入CMD
net start apache2 開啟服務
net stop apache2 停止服務
Apache配置文件語法檢查
Apache的主配置文件:C:\Program Files (x86)\phpStudy\Apache2\conf\httpd.conf
Apache的虛擬主機配置文件:C:\Program Files (x86)\phpStudy\Apache2\conf\vhosts.conf
Apache配置文件(httpd.conf)的語法檢查
-t 命令 語法檢查
如果出現如下問題,是沒有配置系統的“環境變量”。
路徑:計算機——屬性——高級系統設置——高級——系統變量——path
Apache配置命令
1、DocumentRoot——網站根目錄
註意:e:\www目錄必須存在,路徑上不能包含中文。
2、DirectoryIndex——默認首頁設置
多個首頁文件之間用“空格”隔開。 如果首頁文件都不存在,則會顯示目錄列表。
3、listen命令
當Apache啟動以後,是偵聽指定的服務的端口;是偵聽哪個IP的哪個端口的訪問。
偵聽自己網卡的IP的端口。
一臺主機可以有多個網卡(至少有兩個,一個有線、一個無線)。一個網卡可以設置多個IP地址。
理解一下端口:
格式:listen IP地址[:端口號]
舉例:listen 80 //偵聽所有IP的80端口的請求
listen 192.168.40.52 //偵聽192.168.40.52所有端口的請求
listen 192.168.40.52:80 //偵聽192.168.40.52IP地址的80端口
<Directory></Directory>——目錄權限
DocumentRoot “E:\www”
<Directory “E:\www”>
Options Indexes|none|all
Order Deny,Allow
Deny From All
Allow From 192.168.40.52
</Directory>
l Options:指定目錄具有哪些特性,取值:none、all、indexes
u None:禁止所有IP訪問。
u All:擁有所有權限
u Indexes:如果首頁不存在,顯示目錄列表。
l Order:Deny(禁用)和Allow(允許)的執行順序。
u 舉例:Order deny,allow
l Deny:禁止哪些IP訪問。
u Deny from All //禁止所有的IP訪問
u Deny from 192.168.10.25 //禁止192.168.10.25的IP訪問我的主機
l Allow:允許哪些IP訪問
u Allow from all //允許所有IP訪問
u Allow from 127.0.0.1 //只允許我自己訪問
虛擬主機的概念
將一塊磁盤分成若幹個小空間,對外出租。每個小空間,具有網站的所有功能。
虛擬主機的配置過驟
第一步:配置本地的DNS文件(hosts)
文件路徑:C:\Windows\System32\drivers\etc\hosts
第二步:Apache的主配置文件(httpd.conf)
文件路徑:C:\Program Files (x86)\phpStudy\Apache2\conf\httpd.conf
NameVirtualHost是配置基於域名的虛擬主機最重要的一個命令。換句話說:就是指為哪個IP的什麽端口配置虛擬主機。這裏的IP地址是自己網卡,不是別人的。
通過include命令,將虛擬主機的配置文件加載進來。
第三步:Apache的虛擬主機的配置文件(vhosts.conf)
文件路徑:C:\Program Files (x86)\phpStudy\Apache2\conf\vhosts.conf
在vhosts.conf中使用<VirtualHost></VirtualHost>來定義多個虛擬主機
配置完虛擬主機後,為什麽localhost訪問路徑被更改了?
虛擬主機配置的優先級,高於httpd.conf中的全局配置。
當訪問一個hosts中定義的域名時,但這個域名並沒有做虛擬主機配置,那麽,此時這個域名將指向第1個虛擬主機。
當配置完虛擬主機後,原來localhost訪問路徑被修改了,原因也是:第1個虛擬主機的優先級最高。
IP、Apache虛擬主機配置部分學習筆記