CentOS LAMP项目实战案例
以下是一个基于CentOS的LAMP项目实战案例,涵盖环境搭建、应用部署及安全配置,以搭建简易电商网站为例:
一、环境准备
- 系统要求:CentOS 7/8(推荐最小化安装)
- IP配置:确保服务器IP可达,关闭防火墙或放行HTTP/HTTPS端口(80/443)。
二、LAMP环境部署
-
安装Apache
sudo yum install httpd -y sudo systemctl start httpd sudo systemctl enable httpd
验证:浏览器访问服务器IP,显示“Apache默认页面”。
-
安装MariaDB(MySQL替代)
sudo yum install mariadb-server mariadb -y sudo systemctl start mariadb sudo mysql_secure_installation # 设置root密码并完成安全配置
验证:登录MySQL
mysql -u root -p
,创建数据库CREATE DATABASE shopdb;
。 -
安装PHP及扩展
sudo yum install php php-mysql php-gd php-xml -y sudo systemctl restart httpd
验证:在
/var/www/html
创建info.php
,内容为<?php phpinfo(); ?>
,访问http://IP/info.php
查看PHP信息。
三、项目部署(以电商网站为例)
-
部署网站代码
- 下载开源电商系统(如osCommerce),解压至
/var/www/html/shop
:wget https://example.com/oscommerce.zip unzip oscmmerce.zip -d /var/www/html/shop chown -R apache:apache /var/www/html/shop
- 配置数据库连接:修改
shop/includes/configure.php
,填入MySQL的DB_HOST
、DB_USER
、DB_PASS
。
- 下载开源电商系统(如osCommerce),解压至
-
配置虚拟主机(可选)
编辑/etc/httpd/conf.d/shop.conf
::80> ServerName shop.example.com DocumentRoot /var/www/html/shop Options Indexes FollowSymLinks AllowOverride All Require all granted 重启Apache生效:
sudo systemctl restart httpd
。
四、安全加固
-
防火墙配置
sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload
-
禁用不必要的模块
编辑/etc/httpd/conf/httpd.conf
,注释掉不需要的模块(如mod_rewrite
仅在需要时启用)。 -
定期备份
- 数据库备份:
mysqldump -u root -p shopdb > /backup/shopdb_$(date +%F).sql
- 代码备份:
tar -czvf /backup/shop_$(date +%F).tar.gz /var/www/html/shop
。
- 数据库备份:
五、优化与监控
- Apache优化:调整
/etc/httpd/conf/httpd.conf
中的MaxKeepAliveRequests
和KeepAliveTimeout
参数。 - 日志监控:通过
tail -f /var/log/httpd/access_log
实时查看访问日志,异常时排查。
参考来源
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权请联系我们,一经查实立即删除!