温馨提示×

centos lamp虚拟主机搭建指南

小樊
58
2025-06-08 10:08:50
栏目: 云计算

在CentOS系统上搭建LAMP(Linux, Apache, MySQL, PHP)环境并配置虚拟主机是一个相对直接的过程。以下是一个详细的步骤指南,帮助你在CentOS系统上搭建LAMP环境并配置虚拟主机:

1. 安装LAMP环境

安装Apache

首先,使用yum安装Apache Web服务器:

sudo yum install httpd

安装完成后,启动Apache服务并设置为开机自启:

sudo systemctl start httpd
sudo systemctl enable httpd

安装MySQL

接下来,安装MySQL数据库服务器:

sudo yum install mariadb-server mariadb

安装完成后,启动MySQL服务并设置开机自启:

sudo systemctl start mariadb
sudo systemctl enable mariadb

设置MySQL的root用户密码:

sudo mysql_secure_installation

安装PHP及其相关模块

安装PHP及其必要的模块:

sudo yum install php php-mysql php-gd

2. 配置虚拟主机

创建虚拟主机目录

为每个虚拟主机创建一个文档根目录:

sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html

编辑虚拟主机配置文件

/etc/httpd/conf.d 目录下创建虚拟主机配置文件,例如 example.com.conf

sudo vi /etc/httpd/conf.d/example.com.conf

添加以下内容:

VirtualHost *:80
    ServerName www.example.com
    ServerAlias example.com
    DocumentRoot /var/www/example.com/public_html
    ErrorLog /var/log/httpd/example.com-error.log
    CustomLog /var/log/httpd/example.com-access.log combined

同样地,为 example2.com 创建配置文件:

sudo vi /etc/httpd/conf.d/example2.com.conf

添加以下内容:

VirtualHost *:80
    ServerName www.example2.com
    ServerAlias example2.com
    DocumentRoot /var/www/example2.com/public_html
    ErrorLog /var/log/httpd/example2.com-error.log
    CustomLog /var/log/httpd/example2.com-access.log combined

启用虚拟主机配置

创建符号链接将配置文件链接到 sites-enabled 目录:

sudo ln -s /etc/httpd/conf.d/example.com.conf /etc/httpd/sites-enabled/
sudo ln -s /etc/httpd/conf.d/example2.com.conf /etc/httpd/sites-enabled/

重启Apache服务

完成配置后,重启Apache服务以使更改生效:

sudo systemctl restart httpd

3. 配置域名解析

将域名解析到你的CentOS服务器的IP地址。这通常在域名注册商的管理界面中完成。

4. 测试虚拟主机

打开浏览器,访问 http://example.comhttp://example2.com,确保虚拟主机配置成功。

5. 配置防火墙(可选)

如果需要,配置防火墙允许外部访问HTTP(端口80)和HTTPS(端口443):

sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
sudo firewall-cmd --permanent --zone=public --add-port=443/tcp
sudo firewall-cmd --reload

通过以上步骤,你就可以在CentOS系统上成功搭建一个LAMP环境,并配置多个虚拟主机。每个虚拟主机可以通过不同的域名或端口进行访问。

0