前言
为一个http服务要配置多个站点,就需要用到虚拟机主机。
虚拟机主机一般有三类:域名,端口和ip。本文是基于不同端口设置多个虚拟主机,达到多个站点的目的
一、安装apache
apache下载地址:http://archive.apache.org/dist/httpd/
安装步骤:
#下载
wget http://archive.apache.org/dist/httpd/httpd-2.2.29.tar.gz
#解压
tar -zxvf httpd-2.2.29.tar.gz
cd httpd-2.2.29
./configure --prefix=/usr/local/apache --enable-modules=so --enable-rewrite
make
make install
#运行,切换到apache的bin目录下
./apachectl start
#查看端口或者浏览器访问测试即可
安装成功后,apache默认的项目路径为:/usr/local/apache/htdocs
二、配置多台虚拟机
1.创建新的项目
先为apache创建一个新的项目路径:
cd /var/www/html
vi index.html #随便写入一点东西
2.修改apache的配置文件
修改配置文件httpd.conf:
#进入配置文件目录,编辑文件
cd /usr/local/apache/conf
vi httpd.conf
#找到文中与下面要添加的数据的相同的位置,在原本基础上逐步添加以下代码
#监听的端口
Listen 8080
#
ServerName localhost:8080
#项目根目录,为刚刚创建的新项目的路径
DocumentRoot "/var/www/html"
#
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
#允许访问php
AddType application/x-httpd-php .php
#开启虚拟机,找到以下内容将第二句的注释去掉
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
3,修改extra目录下的httpd-vhosts.conf对虚拟机访问路径进行配置
cd /usr/local/apache/conf/extra
vi httpd-vhosts.conf
#将原本的内容修改为
<VirtualHost *:8080>
ServerName localhost:8080
DocumentRoot "/var/www/html/" #项目目录
<Directory "/var/www/html/"> #项目目录
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
修改完成后 ,重启apache
验证
查看端口:netstat -nlpt
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp6 0 0 :::8080 :::* LISTEN 1226/httpd
tcp6 0 0 :::80 :::* LISTEN 1226/httpd
存在刚刚配置的8080端口,则说明刚刚配置的虚拟主机成功了,可以在浏览器访问,显示的将是你index.html中书写的内容,添加更多的虚拟主机,操作方法一致。