1. 程式人生 > >43.apache虛擬主機的使用

43.apache虛擬主機的使用

linux

apache虛擬主機的使用

虛擬主機技術是使用一臺服務器實現發布多個網站的技術。

實現一臺服務器多個網站的方法有:基於網卡,基於端口,基於域名。

基於網卡:一臺主機添加多塊網卡,就相當於有多個IP

基於端口:一臺主機通過同一個IP不同的端口

基於域名:一臺主機通過同一個IP同一個端口不通的域名

Rpmapache文件路徑:

配置文件路徑:/etc/httpd/conf/httpd.conf

網站根文件路徑:/var/www/html/index.html

執行命令文件路徑:/usr/sbin

日誌文件路徑:/var/log/httpd

源碼版apache文件路徑:

配置文件路徑:/usr/local/apache/conf

網站根文件路徑:/usr/local/apache/htdocs

執行命令文件路徑:/usr/local/apache/bin

日誌文件路徑:/usr/local/apache/logs

Linux基於域名搭建虛擬主機實現不同網站發布步驟:

v 配置靜態IP,關閉防火墻,註意apache的安裝方式。

[[email protected] Desktop]# ifconfig eth0 192.168.1.1

[[email protected] Desktop]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

[[email protected] Desktop]# iptables -F

[[email protected]

/* */ Desktop]# service iptables save

[[email protected] Desktop]# setenforce 0

[[email protected] Desktop]# vim /etc/sysconfig/selinux

[[email protected] Desktop]# service httpd status

v 配置DNS,使用linux搭建bind服務器。

[[email protected] /]# rpm -ivh /media/RHEL_6.4\ x86_64\ Disc\ 1/Packages/bind-9.8.2-0.17.rc1.el6.x86_64.rpm

[[email protected] etc]# vim /etc/named.conf

修改參數:

options {

listen-on port 53 { any; };

listen-on-v6 port 53 { ::1; };

directory "/var/named";

dump-file "/var/named/data/cache_dump.db";

statistics-file "/var/named/data/named_stats.txt";

memstatistics-file "/var/named/data/named_mem_stats.txt";

allow-query { any; };

zone "." IN {

type hint;

file "named.ca";

};

zone "a.com" IN {

type master;

file "a.zone";

};

zone "b.com" IN {

type master;

file "b.zone";

};

[[email protected] named]# cp /var/named/named.empty a.zone

[[email protected] named]# vim a.zone

添加參數:www A 192.168.1.1

[[email protected] named]# chown named.named a.zone

[[email protected] named]# cp a.zone b.zone

[[email protected] named]# service named restart

v 配置apache配置文件,打開vhost開關。

源碼版:

[[email protected] conf]# vim /usr/local/apache/conf/httpd.conf

註釋內容:

# Virtual hosts

Include conf/extra/httpd-vhosts.conf

[[email protected] conf]# vim /usr/local/apache/conf/extra/httpd-vhosts.conf

修改參數:

<VirtualHost *:80>

ServerAdmin [email protected]

DocumentRoot "/usr/local/apache/htdocs/a"

ServerName www.a.com

ErrorLog "/usr/local/apache/logs/error.log"

CustomLog "/usr/local/apache/accesslog/access.log" common

</VirtualHost>

<VirtualHost *:80>

ServerAdmin [email protected]

DocumentRoot "/usr/local/apache/htdocs/b"

ServerName www.b.com

ErrorLog "/usr/local/apache/logs/error.log"

CustomLog "/usr/local/apache/accesslog/access.log" common

</VirtualHost>

v 創建相關文件夾和文件

[[email protected] apache]# mkdir accesslog

[[email protected] apache]# mkdir accesslog

[[email protected] apache]# mkdir /usr/local/apache/htdocs/a

[[email protected] apache]# mkdir /usr/local/apache/htdocs/b

[[email protected] a]# echo jintiantianqibucuo > index.html

[[email protected] b]# echo mingtianhuigenghao >index.html

使用用戶密碼安全性登陸訪問網頁:

v 創建用戶認證數據文件並創建一個用戶:

[[email protected] Desktop]# htpasswd -c /usr/local/apache/conf/.passwd ren

註釋:-c:表示創建一個數據文件,沒有改選項則是添加一個用戶

v 添加用戶授權配置:

[[email protected] Desktop]# vim /usr/local/apache/conf/httpd.conf

添加參數:

<directory "/usr/local/apache/htdocs/a">

authname "ren"

authtype basic

authuserfile /usr/local/apache/conf/.passwd

require valid-user

</directory>


43.apache虛擬主機的使用