LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機

按順序安裝LAMP三個組件後,LAMP的環境的基礎程序就已經搭建完畢了。接下來咱們要把各個模塊鉚接起來並測試其工做是否正常。php

1、Apache2.4與PHP5的結合

一、修改Apache2.4的配置文件

vim /usr/local/apache2.4/conf/httpd.conf #httpd的配置文件安裝時默認設置在這個路徑下html

一共要修改四處地方:
a.給sever設置一個severname
這一步主要是用來解決httpd啓動時的告警信息,以下圖:
LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機
設置方法
找到SeverName行,將#ServerName www.example.com:80 前面的#號註釋掉
LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機linux

b.設置Apache服務可以提供服務,解決訪問是403報錯
修改200行
200 <Directory />
201 AllowOverride none
202 Require all denied

200 <Directory />
201 AllowOverride none
202 Require all granted
LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機apache

c.註釋php.so調用的模塊
查找AddType,在application/x-gzip .gz .tgz下加入AddType application/x-httpd-php .php,注意綠色光標處有一個空格。
LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機vim

d.增長主頁地址
查找DirectoryIndex行,在後面增長index.php
LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機windows

二、開啓Apache2.4服務

a.設置Apache2.4的php解析模塊
咱們安裝了php5和php7,咱們必須設置Apache用那個模塊來解析.so腳本,若是兩個都開啓,啓動httpd時就會報錯,以下圖
/usr/local/apache2.4/bin/apachectl: 行 79: 1432 段錯誤 $HTTPD -k $ARGV
LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機
操做
註釋掉Apache2.4配置文件中,php5和php7行其中一個,你要用哪一種就留下那行,在另一個前加註#號註釋掉。
LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機瀏覽器

b.測試Apache2.4的配置文件語法並從新載入服務器

/usr/local/apache2.4/bin/apachectl -t ##測試語法

每次操做Apache2.4的配置文件後都須要使用這條命令測試系統語法,萬不可不測試直接down掉服務重啓Apache2.4。php7

LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機

/usr/local/apache2.4/bin/apachectl graceful ##從新載入Apache2.4配置文件使修改生效app

c.設置80端口的數據可以經過firewalld防火牆

iptables -I INPUT -p tcp --dport 80 -j ACCEPT

d.啓動Apache2.4

/usr/local/apache2.4/bin/apachectl start

e.新建一個index.php測試php與Apache是否正常連接工做

在/usr/local/apache2.4/htdocs/下新建一個index.php文件

vim /usr/local/apache2.4/htdocs/index.php ##增長以下內容

<?php
phpinfo();
?>

LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機

三、訪問index.php

電腦瀏覽器端,打開http://192.168.88.128/index.php 網址,就能看到咱們的第一個網頁了。^_^
LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機

2、Apache虛擬主機

早期的linux服務器上一個服務器只能運行一個網站,就是說一個服務器只能給一個域名的網站提供服務,但隨着技術發展,一個httpd的程序能夠同時管理多個網站,就是說服務器上只跑一個服務但他同時能夠相應A、B等多個網站的訪問需求。這就是Apache虛擬主機的功能,咱們能夠簡單的把一個網站或者一個域名叫作一臺主機。

操做實例

0、更改windows的host,

win10下更改主機的host文件須要用管理員權限,而默認狀況下你沒有管理權限,因此沒法保存更改後的hosts文件。
這裏咱們要使用cmd(管理員)方式打開hosts文件
LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機

文件的路徑也改了,是C:\Windows\System32\drivers\etc
LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機
而後就跟原來同樣能夠正常保存了。

一、打開Apache配置文件的虛擬主機選項

vim /usr/local/apache2.4/conf/httpd.conf

LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機

大概在476行附近,刪掉前面的#號讓配置生效

二、編輯vitual host的配置文件

vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf

LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機

LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機

把上面那個文件編輯成下面這個樣子,其中
DocumentRoot 行是網站網頁存放的文件夾
servername:網站的域名,不用帶www
serveralias:網站的其餘域名
errorlog:錯誤日誌位置

三、從新載入Apache配置

/usr/local/apache2.4/bin/apachectl -t

LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機
這裏看到咱們的新網站尚未東西,咱們設置一下

mkdir -p /data/wwwroot/abc.com /data/wwwroot/111.com
echo 「u are visit abc.com」 >/data/wwwroot/abc.com/index.html
echo 「u are visit 111.com」 >/data/wwwroot/111.com/index.html
/usr/local/apache2.4/bin/apachectl graceful

LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機

四、用curl命令測試設置是否成功

curl -x192.168.88.128:80 www.abc.com
curl -x192.168.88.128:80 www.111.com
curl -x192.168.88.128:80 www.test.com

LAMP+LNMP(五)Apache2.4與PHP5的結合、虛擬主機

PS:關於虛擬主機幾個知識點一、虛擬主機配置文件中定義的第一個站點就是默認虛擬主機,你訪問域名若是沒有本身的配置定義就會被解析到默認虛擬主機上。二、虛擬主機開啓時原主配置文件DocumentRoot、ServerName選項失效。三、虛擬主機能夠定義不少個。每個配置項對應着一個網站。

相關文章
相關標籤/搜索