如何使用centos lamp进行开发
导读:一、CentOS LAMP环境搭建步骤 LAMP(Linux+Apache+MySQL+PHP)是经典的开源Web开发栈,以下是在CentOS上搭建的标准流程: 1. 系统准备 更新系统:运行sudo yum update -y,确保所有...
一、CentOS LAMP环境搭建步骤
LAMP(Linux+Apache+MySQL+PHP)是经典的开源Web开发栈,以下是在CentOS上搭建的标准流程:
1. 系统准备
- 更新系统:运行
sudo yum update -y
,确保所有软件包为最新版本,减少兼容性问题。 - 关闭SELinux(可选):若无需严格安全限制,可临时关闭SELinux(
sudo setenforce 0
),并修改配置文件/etc/selinux/config
中的SELINUX=disabled
(需重启生效)。 - 配置防火墙:允许HTTP(80端口)和HTTPS(443端口)流量,运行以下命令:
sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload
2. 安装Apache(Web服务器)
- 安装Apache:使用
yum
安装httpd
包,sudo yum install httpd -y
。 - 启动与开机自启:运行
sudo systemctl start httpd
启动服务,sudo systemctl enable httpd
设置开机自动启动。 - 验证安装:在浏览器输入服务器IP地址,若看到Apache默认欢迎页面(如“Testing 123…”),则说明安装成功。
3. 安装MySQL(数据库服务器)
- 安装MySQL:CentOS 7可使用
sudo yum install mariadb-server -y
(MariaDB为MySQL分支,兼容性好);CentOS 8及以上可通过添加MySQL官方YUM源安装指定版本(如MySQL 8.0):sudo yum install https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm -y sudo yum-config-manager --disable mysql80-community 禁用MySQL 8.0 sudo yum-config-manager --enable mysql57-community 启用MySQL 5.7(或其他版本) sudo yum install mysql-community-server -y
- 启动与开机自启:
sudo systemctl start mysqld
(或mariadb
),sudo systemctl enable mysqld
。 - 配置安全性:运行
sudo mysql_secure_installation
,按提示设置root密码、删除匿名用户、禁用root远程登录等。 - 验证安装:登录MySQL(
mysql -u root -p
),执行SELECT VERSION();
查看版本信息,确认安装成功。
4. 安装PHP(服务器端脚本语言)
- 安装PHP及常用扩展:使用
yum
安装PHP核心及常用模块(如MySQL驱动、GD库、MB字符串处理等),推荐使用EPEL和Remi仓库获取最新版本:sudo yum install epel-release -y sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm -y CentOS 7 sudo yum-config-manager --enable remi-php81 启用PHP 8.1仓库(根据需求选择版本) sudo yum install php php-cli php-mysqlnd php-gd php-mbstring php-xml php-zip -y
- 重启Apache:
sudo systemctl restart httpd
,使PHP模块生效。 - 验证安装:在
/var/www/html
目录下创建info.php
文件(echo "< ?php phpinfo(); ?> " | sudo tee /var/www/html/info.php
),在浏览器访问http://服务器IP/info.php
,若看到PHP信息页面,则说明安装成功。
5. 配置虚拟主机(可选,多站点支持)
- 创建网站目录:
sudo mkdir -p /var/www/example.com/public_html
,设置目录权限(sudo chown -R apache:apache /var/www/example.com
)。 - 配置虚拟主机:在
/etc/httpd/conf.d/
目录下创建.conf
文件(如example.com.conf
),内容如下:< VirtualHost *:80> ServerAdmin webmaster@example.com DocumentRoot "/var/www/example.com/public_html" ServerName example.com ServerAlias www.example.com ErrorLog "/var/log/httpd/example.com-error_log" CustomLog "/var/log/httpd/example.com-access_log" common < Directory "/var/www/example.com/public_html"> Options Indexes FollowSymLinks AllowOverride All Require all granted < /Directory> < /VirtualHost>
- 重启Apache:
sudo systemctl restart httpd
,使虚拟主机配置生效。
二、LAMP环境下的开发操作
搭建完成后,即可开始Web应用开发,以下是常见操作:
1. 部署Web应用
- 静态网站:将HTML、CSS、JS文件放入
/var/www/html
(默认站点目录)或虚拟主机的DocumentRoot
目录(如/var/www/example.com/public_html
),通过浏览器访问即可。 - 动态应用(如WordPress):下载应用文件(如WordPress),解压到站点目录,创建MySQL数据库(通过
mysql -u root -p
命令),修改应用配置文件(如WordPress的wp-config.php
),填写数据库信息,访问站点即可完成安装。
2. 数据库管理
- 命令行操作:使用
mysql -u root -p
登录MySQL,执行SQL语句(如创建数据库CREATE DATABASE mydb;
、创建表CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50));
)。 - 图形化管理:安装
phpMyAdmin
(sudo yum install phpmyadmin -y
),配置/etc/httpd/conf.d/phpmyadmin.conf
文件(允许本地访问),重启Apache后,通过浏览器访问http://服务器IP/phpmyadmin
,输入root密码即可管理数据库。
3. PHP开发与调试
- 创建PHP文件:在站点目录下创建
.php
文件(如/var/www/html/test.php
),编写PHP代码(如连接数据库、处理表单),通过浏览器访问查看结果。 - 错误日志:若PHP代码出错,查看Apache错误日志(
/var/log/httpd/error_log
)或PHP错误日志(/var/log/php-fpm/error.log
,若使用PHP-FPM),定位问题。 - 扩展安装:若需要额外PHP扩展(如Redis、PDO),运行
sudo yum install php-redis php-pdo -y
,重启Apache即可。
4. 性能优化
- Apache优化:调整
httpd.conf
中的MaxKeepAliveRequests
(保持连接数)、KeepAliveTimeout
(保持连接超时时间)等参数,提升并发处理能力。 - MySQL优化:修改
my.cnf
(或/etc/mysql/my.cnf
)中的innodb_buffer_pool_size
(InnoDB缓冲池大小,建议为物理内存的50%-70%)、max_connections
(最大连接数)等参数。 - 缓存机制:安装Memcached(
sudo yum install memcached -y
)或Redis(sudo yum install redis -y
),作为应用层缓存,减少数据库查询次数。
注意事项
- 生产环境中,建议开启SELinux(并配置正确策略)、使用HTTPS(通过Let’s Encrypt获取免费SSL证书)、定期备份数据(如使用
mysqldump
备份MySQL数据库)。 - 若需更高性能,可考虑将Apache替换为Nginx(作为反向代理),或使用PHP-FPM替代传统Apache模块处理PHP请求。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何使用centos lamp进行开发
本文地址: https://pptw.com/jishu/715001.html