LAMP CentOS 环境搭建指南
一、LAMP简介
LAMP 是一种非常流行的网站开发和部署环境,它代表 Linux、Apache、MySQL/MariaDB 和 PHP,这种堆栈因其高度灵活性和可定制性,适合各种规模的 Web 应用开发、部署和维护,本文将详细介绍如何在 CentOS 操作系统上安装和配置 LAMP 环境。
二、系统准备
在开始搭建 LAMP 环境之前,需要确保系统已经满足以下条件:
1、操作系统:CentOS 7 或 CentOS 8
2、网络连接:系统必须能够访问互联网以下载所需的软件包
3、权限:需要 root 权限或者通过sudo
提权执行命令
三、更新系统
登录到您的 CentOS 服务器并更新系统软件包:
sudo dnf update y # For CentOS 8 sudo yum update y # For CentOS 7
四、安装 Apache
1. 安装 Apache:
sudo dnf install httpd y # For CentOS 8 sudo yum install httpd y # For CentOS 7
2. 启动并启用 Apache:
sudo systemctl start httpd sudo systemctl enable httpd
3. 验证 Apache 是否成功启动:
在浏览器中访问服务器的 IP 地址,如果看到 Apache 默认页面,则表示安装成功。
http://YOUR_SERVER_IP
五、安装 MariaDB (或 MySQL)
由于 CentOS 默认源里没有 MySQL 5.7 版本,建议使用 MariaDB,它是 MySQL 的一个分支,并且完全兼容 MySQL。
1. 安装 MariaDB:
sudo dnf install mariadbserver mariadb y # For CentOS 8 sudo yum install mariadbserver mariadb y # For CentOS 7
2. 启动并启用 MariaDB:
sudo systemctl start mariadb sudo systemctl enable mariadb
3. 设置 MariaDB root 用户密码:
sudo grep 'temporary password' /var/log/mariadb/mariadb.log
获取临时密码后,执行以下命令来设置新密码:
mysql_secure_installation
按提示输入临时密码,然后设置新的 root 密码,并回答后续的配置问题。
六、安装 PHP
1. 安装 PHP 及相关模块:
sudo dnf install php y # For CentOS 8 sudo yum install php y # For CentOS 7
2. 重启 Apache 服务使 PHP 生效:
sudo systemctl restart httpd
3. 验证 PHP 是否安装成功:
在/var/www/html
目录下创建一个info.php
文件:
<?php phpinfo(); ?>
然后在浏览器中访问:
http://YOUR_SERVER_IP/info.php
如果能看到 PHP 的配置信息页面,说明 PHP 安装成功。
七、关联 PHP 和 MariaDB
为了在 PHP 中使用 MariaDB,需要安装相应的 PHP 扩展:
sudo dnf install phpmysqlnd y # For CentOS 8 sudo yum install phpmysql y # For CentOS 7
八、防火墙设置(可选)
如果服务器启用了防火墙,需要开放 HTTP(80端口)和 HTTPS(443端口):
sudo firewallcmd permanent zone=public addservice=http sudo firewallcmd permanent zone=public addservice=https sudo firewallcmd reload
Q1: 如何更改 Apache 默认根目录?
A1: 可以通过修改 Apache 配置文件来更改默认根目录,编辑/etc/httpd/conf/httpd.conf
,找到DocumentRoot
并将其设置为你想要的目录,将其改为/var/www/myweb
,然后重新启动 Apache:
sudo systemctl restart httpd
之后,你可以将你的网站文件放在/var/www/myweb
下。
Q2: 如何进行虚拟主机配置?
A2: 虚拟主机允许你在一台服务器上托管多个域名或子域名,你可以通过在/etc/httpd/conf.d/
目录下创建一个新的配置文件来实现这一点,创建一个名为mydomain.conf
的文件:
<VirtualHost *:80> ServerName www.mydomain.com DocumentRoot /var/www/mydomain ErrorLog /var/log/httpd/mydomainerror.log CustomLog /var/log/httpd/mydomainrequests.log combined </VirtualHost>
记得将serverName
和DocumentRoot
替换成你的域名和网站目录,然后重新启动 Apache:
sudo systemctl restart httpd