在CentOS上配置LAMP(Linux, Apache, MySQL, PHP)环境涉及几个步骤。以下是一个基本的指南:
首先,确保你的CentOS系统是最新的:
sudo yum update -y
sudo yum install httpd -y
启动并启用Apache服务:
sudo systemctl start httpd
sudo systemctl enable httpd
sudo yum install mysql-server -y
启动并启用MySQL服务:
sudo systemctl start mysqld
sudo systemctl enable mysqld
运行安全脚本以提高安全性:
sudo mysql_secure_installation
按照提示设置root密码,并选择是否删除匿名用户、禁止远程root登录等。
sudo yum install php php-mysql -y
重启Apache服务以加载PHP模块:
sudo systemctl restart httpd
登录到MySQL:
sudo mysql -u root -p
创建一个新的数据库和用户,并授予权限(例如,创建一个名为mydatabase
的数据库和一个名为myuser
的用户):
CREATE DATABASE mydatabase;
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';
GRANT ALL PRIVILEGES ON mydatabase.* TO 'myuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
创建一个PHP文件来测试数据库连接。在/var/www/html
目录下创建一个名为info.php
的文件:
sudo nano /var/www/html/info.php
添加以下内容:
<?php
$servername = "localhost";
$username = "myuser";
$password = "mypassword";
$dbname = "mydatabase";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
echo "连接成功";
?>
保存并退出编辑器,然后在浏览器中访问http://your_server_ip/info.php
,你应该看到“连接成功”的消息。
确保防火墙允许HTTP和HTTPS流量:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
如果SELinux处于 enforcing 模式,可能需要配置它以允许Apache访问MySQL:
sudo setsebool -P httpd_can_network_connect_db 1
完成这些步骤后,你的CentOS系统应该已经成功配置了一个基本的LAMP环境。