华为云服务器运行EulerOS 2.0,如何配置LAMP环境来支持网站运行?

在华为云EulerOS 2.0上配置LAMP环境,可以按照以下步骤进行:

一、系统更新与准备

# 更新系统
sudo yum update -y

# 安装常用工具
sudo yum install -y wget vim net-tools

二、安装Apache

# 安装Apache
sudo yum install -y httpd

# 启动Apache并设置开机自启
sudo systemctl start httpd
sudo systemctl enable httpd

# 检查状态
sudo systemctl status httpd

三、安装MySQL/MariaDB

# 安装MariaDB(EulerOS默认使用MariaDB)
sudo yum install -y mariadb-server mariadb

# 启动MariaDB并设置开机自启
sudo systemctl start mariadb
sudo systemctl enable mariadb

# 运行安全配置脚本
sudo mysql_secure_installation

四、安装PHP

# 添加EPEL和Remi仓库(如果需要更新版本)
sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm

# 安装PHP及相关扩展
sudo yum install -y php php-mysqlnd php-gd php-xml php-mbstring php-json php-fpm

# 检查PHP版本
php -v

五、配置LAMP组件

1. 配置Apache支持PHP

# 编辑Apache配置文件
sudo vim /etc/httpd/conf/httpd.conf

# 确保有以下配置(通常已默认存在):
# DirectoryIndex index.php index.html
# AddType application/x-httpd-php .php

2. 配置PHP

# 编辑PHP配置文件
sudo vim /etc/php.ini

# 修改关键参数(根据需要调整):
# memory_limit = 256M
# upload_max_filesize = 64M
# post_max_size = 64M
# date.timezone = Asia/Shanghai

3. 配置防火墙

# 开放HTTP/HTTPS端口
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

# 或者直接开放端口
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --reload

六、测试LAMP环境

1. 创建测试文件

# 创建PHP信息测试页
sudo echo "<?php phpinfo(); ?>" > /var/www/html/info.php

# 创建数据库连接测试文件
sudo cat > /var/www/html/dbtest.php << 'EOF'
<?php
$servername = "localhost";
$username = "root";
$password = "your_password";

// 创建连接
$conn = new mysqli($servername, $username, $password);

// 检测连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
echo "MySQL连接成功!";
?>
EOF

2. 重启服务

sudo systemctl restart httpd
sudo systemctl restart mariadb

七、安全加固建议

1. 修改默认目录

# 创建网站目录
sudo mkdir -p /var/www/yourdomain.com/public_html

# 修改Apache配置指向新目录
sudo vim /etc/httpd/conf/httpd.conf
# 修改DocumentRoot和Directory为新的路径

2. 配置数据库权限

-- 创建专用数据库用户
CREATE DATABASE webdb;
CREATE USER 'webuser'@'localhost' IDENTIFIED BY 'StrongPassword123!';
GRANT ALL PRIVILEGES ON webdb.* TO 'webuser'@'localhost';
FLUSH PRIVILEGES;

3. 禁用危险函数

# 在php.ini中禁用危险函数
disable_functions = exec,passthru,shell_exec,system,proc_open,popen

八、一键安装脚本(可选)

#!/bin/bash
# LAMP一键安装脚本

# 更新系统
yum update -y

# 安装Apache
yum install -y httpd
systemctl start httpd
systemctl enable httpd

# 安装MariaDB
yum install -y mariadb-server mariadb
systemctl start mariadb
systemctl enable mariadb

# 安装PHP
yum install -y php php-mysqlnd php-gd php-xml php-mbstring

# 重启服务
systemctl restart httpd
systemctl restart mariadb

# 创建测试页
echo "<?php phpinfo(); ?>" > /var/www/html/info.php

echo "LAMP安装完成!"

九、常见问题排查

  1. Apache无法启动

    # 检查配置语法
    sudo httpd -t
    
    # 查看错误日志
    sudo tail -f /var/log/httpd/error_log
  2. PHP不执行

    # 检查是否安装php模块
    sudo yum install -y php
    
    # 重启Apache
    sudo systemctl restart httpd
  3. 数据库连接失败

    # 检查MariaDB状态
    sudo systemctl status mariadb
    
    # 检查防火墙
    sudo firewall-cmd --list-all

十、后续优化建议

  1. 安装phpMyAdmin(可选)

    sudo yum install -y phpmyadmin
  2. 配置SSL证书

    # 使用Let's Encrypt免费证书
    sudo yum install -y certbot python3-certbot-apache
    sudo certbot --apache
  3. 性能优化

    • 启用Apache缓存模块
    • 配置OPcache提速PHP
    • 调整MySQL缓存设置

完成以上步骤后,通过浏览器访问服务器IP地址,应该能看到Apache默认页面,访问 http://服务器IP/info.php 可以看到PHP信息页面。

注意:生产环境请务必修改默认密码、禁用不必要的服务、定期更新安全补丁。

云服务器