共计 2646 个字符,预计需要花费 7 分钟才能阅读完成。
前言
本文主要讲述在一个基于 Debian 操作系统和 apache 服务器的主机上配置多站点的方式
最近搭建的多个站点都是基于 debian 操作系统, 都是在阿里云上搭建 Lamp 环境 . 自己在本地也使用 Vagrant 装载一个 debian 的 box 用来作为开发环境中的本地服务器. 本文记录了基于多站点配置是如何做到的
我在阿里云以及 Vagrant 虚机中都是使用
apt-get install apache2
的方式直接安装的 apache 服务器.
debian 下 Apache 的配置文件位置
在 debian 或基于 debian 的 Linux 发行版中 apache 安装后的默认配置文件所在目录都是在 /etc/apache2/
目录下.
在这个目录下有如下目录
mods-available 包含可以使用的模块
mods-enabled 包含已经启用的模块
sites-available 包含可以使用的站点配置
sites-enabled 包含已经启用的站点配置
...
另外:
apache2.conf 是主配置文件
httpd.conf 用户配置文件
...
进行配置
多站点的配置主要在 /etc/apache2/sites-available
目录下进行
假如我们需要建立两个名字分别为 project1 和 project2 的站点, 那我们可以在 sites-available 目录下先建立这两个文件(本文中的 $ 号表示 shell 指示符, 不是输入的部分)
$touch /etc/apache2/sites-available/project1
$touch /etc/apache2/sites-available/project2
然后在 project1 中写入如下格式内容
<VirtualHost *:80>
ServerAdmin admin@project.com
ServerName project1.com
ServerAlias www.project1.com
DocumentRoot /var/www/project1/
</VirtualHost>
在 project2 中写入
<VirtualHost *:80>
ServerAdmin admin@project.com
ServerName project2.com
ServerAlias www.project2.com
DocumentRoot /var/www/project2/
</VirtualHost>
这里主要的信息在于 ServerName 和 DocumentRoot . ServerName 后面需要填写的站点绑定的域名. DocumentRoot 后面填写站点根目录 .
这里的 ServerAlias 是指站点的别名, ServerAdmin 是站点管理员的信息
我们在刚才在 sites-available 目录下建立的 project1 和 project2 文件中分别写上了这两个站点的根目录地址, 那么我们就要创建这两个目录
$cd /var/www
$mkdir project1
$mkdir project2
然后我们就可以将 project1.com 和 project2.com 这两个域名都解析到我们的主机 IP (这里 project1.com 和 project2.com 当然是虚拟的, 自己配置的时候根据实际情况来就可以) .
域名解析配置完成后, 我们需要使用以下指令启用站点
$a2ensite project1
$a2ensite project2
当我们执行了这两个命令之后会发现在 /etc/apache2/sites-enable/ 目录下出现了 project1 和 project2 两个 link 文件. 前面说过 sites-enable 是包含已经启用的站点配置的文件夹, 这就代表着. 我们通过 a2ensite 命令启用 sites-available 目录中的站点配置后, apache 就会在 sites-enable 中创建一个对应的配置连接 . 那这样的话, 配置模块的 mods-available 和 mods-enable 目录是否也有同样的特点呢 ???
问题大家自己思考, 我们接下来重启 apache 服务器
service apache2 restart
然后分别上传文件到这两个站点的根目录下, 就可以通过域名进行访问了. 这样就实现了在一个主机上配置多个站点
关于配置命令
a2enmod rewrite 启用 rewrite 模块
a2dismod rewrite 停用 rewrite 模块
a2ensite siteConfName 启用站点 siteConfName
a2dissite siteConfName 停用站点 siteConfName
Ubuntu Server 14.04 安装 Web 服务器(Linux+Apache+MySQL+PHP) http://www.linuxidc.com/Linux/2015-06/119061.htm
Linux 下安装配置 PHP 环境(Apache2) http://www.linuxidc.com/Linux/2015-05/118062.htm
Linux 下 Apache 服务器配置 http://www.linuxidc.com/Linux/2016-06/132025.htm
Ubuntu 13.04 安装 LAMP\Vsftpd\Webmin\phpMyAdmin 服务及设置 http://www.linuxidc.com/Linux/2013-06/86250.htm
CentOS 5.9 下编译安装 LAMP(Apache 2.2.44+MySQL 5.6.10+PHP 5.4.12) http://www.linuxidc.com/Linux/2013-03/80333p3.htm
Linux 下 Apache 服务器配置 http://www.linuxidc.com/Linux/2016-10/136517.htm
Linux 下 Apache 虚拟主机的配置 http://www.linuxidc.com/Linux/2016-04/130381.htm
Ubuntu 下 Apache 的安装与配置 http://www.linuxidc.com/Linux/2016-11/136841.htm
CentOS 6.5 安装 Apache-2.4.10 及安全配置 http://www.linuxidc.com/Linux/2016-12/137985.htm
Apache 的详细介绍:请点这里
Apache 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-12/138943.htm