温馨提示×

LAMP环境下如何部署项目

小樊
34
2025-11-22 09:39:27
栏目: 编程语言

LAMP环境部署项目全流程

一 环境准备与安装

  • 更新系统并安装组件(两种主流发行版命令示例):
    • Debian/Ubuntu
      • 安装:sudo apt update && sudo apt install apache2 mysql-server php libapache2-mod-php php-mysql
    • CentOS/RHEL
      • 安装:sudo yum update && sudo yum install httpd mariadb-server php php-mysqlnd
  • 启动并开机自启服务
    • Debian/Ubuntu:sudo systemctl start apache2 && sudo systemctl enable apache2;数据库:sudo systemctl start mariadb && sudo systemctl enable mariadb
    • CentOS/RHEL:sudo systemctl start httpd && sudo systemctl enable httpd;数据库:sudo systemctl start mariadb && sudo systemctl enable mariadb
  • 数据库安全初始化:sudo mysql_secure_installation(设置 root 密码、移除匿名用户等)。

二 数据库配置

  • 登录数据库:sudo mysql -u root -p
  • 创建应用数据库与用户并授权(请替换为强密码):
    • CREATE DATABASE your_database_name;
    • CREATE USER ‘your_username’@‘localhost’ IDENTIFIED BY ‘your_password’;
    • GRANT ALL PRIVILEGES ON your_database_name. TO ‘your_username’@‘localhost’;*
    • FLUSH PRIVILEGES;
    • EXIT;
  • 将应用的数据库连接配置(如 .env 或配置文件)更新为上述数据库、用户与密码。

三 Apache与PHP配置

  • 启用重写模块(用于 mod_rewrite,常见于框架路由)
    • Debian/Ubuntu:sudo a2enmod rewrite && sudo systemctl restart apache2
  • 配置虚拟主机(示例域名与目录,按需修改)
    • 新建:sudo nano /etc/apache2/sites-available/your_app.conf
    • 内容示例:
      <VirtualHost *:80>
          ServerAdmin webmaster@localhost
          DocumentRoot /var/www/your_app
          <Directory /var/www/your_app>
              Options Indexes FollowSymLinks
              AllowOverride All
              Require all granted
          </Directory>
          ErrorLog ${APACHE_LOG_DIR}/error.log
          CustomLog ${APACHE_LOG_DIR}/access.log combined
      </VirtualHost>
      
    • 启用站点:sudo a2ensite your_app.conf;如存在默认站点可禁用:sudo a2dissite 000-default.conf;重启:sudo systemctl restart apache2
  • PHP 常用配置(路径随系统与版本不同,示例为 Debian/Ubuntu 常见路径)
    • 编辑:sudo nano /etc/php/7.x/apache2/php.ini
    • 可按需调整:upload_max_filesizepost_max_sizememory_limitmax_execution_time
    • 重启 Apache 生效:sudo systemctl restart apache2

四 部署应用与权限

  • 上传应用文件(示例)
    • scp -r /path/to/your/app username@yourserver:/var/www/your_app
    • 或使用 rsync、FTP 等方式
  • 设置文件属主与权限(Web 目录常见做法)
    • sudo chown -R www-data:www-data /var/www/your_app
    • sudo chmod -R 755 /var/www/your_app
  • 初始化步骤(如框架需要)
    • 执行数据迁移/填充、设置应用密钥、配置缓存与日志目录可写等
  • 访问测试
    • 浏览器访问服务器 IP/域名;如需确认 PHP 解析,可临时放置 info.php(内容:)后访问并随后删除。

五 安全与运维要点

  • 启用 HTTPS/TLS(部署有效证书,优先使用 Let’s Encrypt
  • 配置防火墙仅开放必要端口(如 80/443
  • 保持系统与组件更新(安全补丁、PHP 扩展、数据库安全设置)
  • 定期备份数据库与应用文件(含全量与增量策略)
  • 性能优化建议:启用缓存(如 OPcache)、优化数据库查询与索引、启用压缩与静态资源缓存策略。

0