1. 程式人生 > >2018-5-28

2018-5-28

默認虛擬主機

11.14/11.15 Apache和PHP結合

11.16/11.17 Apache默認虛擬主機




11.14/11.15 Apache和PHP結合


通過配置httpd支持php

httpd主配置文件/usr/local/apache2.4/conf/httpd.conf

更改配置文件

技術分享圖片 去掉這一部分的註釋


技術分享圖片

將php7註釋掉,因為加載兩個php會有沖突。(同樣註釋掉php5也一樣,使用其中一個就可以了)


接著 /usr/local/apache2.4/bin/apachectl start //啟動服務

技術分享圖片


iptables -I INPUT -p tcp --dport 80 -j ACCEPT //增加80端口,windows上的瀏覽器也可以訪問

將配置文件裏的Require all denied ,denied 改成granted //防止打開虛擬主機時候顯示403

在這裏增加一行AddType application/x-httpd-php .php //不增加這一行php無法解析,會顯示源代碼

技術分享圖片

再再dir_module這裏增加一行DirectoryIndex index.html index.php //索引頁

技術分享圖片

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

/usr/local/apache2.4/bin/apachectl graceful //重新加載配置文件

技術分享圖片


(ctrl R 輸入關鍵詞可以快速找到歷史命令)


vim /usr/local/apache2.4/htodcs/test.php //增加如下內容

<?php

echo 123;

?> (測試能否使用)









11.16/11.17 Apache默認虛擬主機


一臺服務器可以訪問多個網站,每個網站都是一個虛擬主機

概念:域名(主機名)、DNS、解析域名、hosts

任何一個域名解析到這臺機器,都可以訪問的虛擬主機就是默認虛擬主機


vim /usr/local/apache2.4/conf/httpd.conf //去掉#

vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf //修改虛擬主機配置文件

技術分享圖片

每個virtualhost 代表一個主機。

serveradmin //用來定義管理員郵箱

DocumentRoot //網站的根目錄在哪裏

ErrorLog指定錯誤日誌 Customlog指定訪問日誌

serveralias 可以寫多個域名



第一個是默認的虛擬主機(訪問的內容沒有在配置文件裏,都會默認訪問默認虛擬主機)

技術分享圖片

創建對應的目錄

技術分享圖片

然後再對應站點目錄下創建一個index.php

技術分享圖片

技術分享圖片

沒有錯,重新加載。


接下來測試虛擬主機

curl -x192.168.226.131:80 abc.com //無論什麽域名指向過來都會到226.131,即默認虛擬主機

技術分享圖片


技術分享圖片

訪問到了第二個虛擬主機


2018-5-28