如何在centos上搭建thinkphp开发环境
导读:一、前置准备 确保CentOS系统已更新至最新版本,并安装基础开发工具(如gcc、make等): sudo yum update -y sudo yum groupinstall "Development Tools" -y 二、安装PH...
一、前置准备
确保CentOS系统已更新至最新版本,并安装基础开发工具(如gcc、make等):
sudo yum update -y
sudo yum groupinstall "Development Tools" -y
二、安装PHP及必要扩展
ThinkPHP 8.x要求PHP版本≥8.0,需安装PHP核心、CLI、FPM及常用扩展(如mysqlnd、gd、mbstring等)。推荐通过Remi仓库安装(支持最新PHP版本):
- 添加EPEL和Remi仓库:
sudo yum install epel-release -y sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm -y # CentOS 7 # CentOS 8需替换为对应Remi仓库地址
- 启用PHP 8.0仓库(以8.0为例,可根据需求替换为8.1/8.2):
sudo yum-config-manager --enable remi-php80
- 安装PHP及扩展:
sudo yum install php php-cli php-fpm php-mysqlnd php-gd php-mbstring php-xml php-curl php-bcmath -y
- 启动PHP-FPM并设置开机自启:
sudo systemctl start php-fpm sudo systemctl enable php-fpm
- 验证PHP版本:
输出应包含PHP 8.x版本信息。php -v
三、安装Web服务器(以Nginx为例)
ThinkPHP需Web服务器处理HTTP请求,推荐使用Nginx(高性能、轻量级):
- 安装Nginx:
sudo yum install nginx -y
- 启动Nginx并设置开机自启:
sudo systemctl start nginx sudo systemctl enable nginx
- 验证Nginx运行状态:
浏览器访问服务器IP,若看到Nginx欢迎页面则说明安装成功。
四、配置Web服务器支持PHP
1. 配置Nginx解析PHP
编辑Nginx默认站点配置文件(或新建自定义配置):
sudo vi /etc/nginx/conf.d/thinkphp.conf
添加以下内容(替换/path/to/your/thinkphp/project
为项目实际路径):
server {
listen 80;
server_name your_domain.com;
# 替换为域名或IP
root /path/to/your/thinkphp/project/public;
# ThinkPHP项目public目录
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
# 路由重写,支持PATHINFO
}
location ~ \.php$ {
fastcgi_pass unix:/run/php-fpm/www.sock;
# 与PHP-FPM通信
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
location ~ /\.ht {
deny all;
# 禁止访问.htaccess文件
}
}
- 测试Nginx配置语法:
若输出sudo nginx -t
syntax is ok
,则重启Nginx使配置生效:sudo systemctl restart nginx ```。
五、安装Composer(PHP依赖管理工具)
ThinkPHP项目依赖Composer管理,安装步骤如下:
- 安装Composer依赖:
sudo yum install unzip git -y
- 下载并安装Composer:
curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer
- 验证Composer安装:
输出应显示Composer版本信息。composer --version
六、部署ThinkPHP项目
- 进入项目目录:
cd /path/to/your/thinkphp/project
- 使用Composer创建ThinkPHP项目(以ThinkPHP 8.x为例):
或将现有项目上传至composer create-project topthink/think your-project-name
/path/to/your/thinkphp/project
目录。 - 配置数据库连接:
编辑项目根目录下的.env
文件(或config/database.php
),修改以下参数:DB_TYPE=mysql DB_HOST=127.0.0.1 DB_NAME=your_database_name DB_USER=your_database_user DB_PASSWORD=your_database_password DB_PORT=3306 DB_PREFIX=tp_ # 表前缀(可选) ```。
七、配置数据库
- 安装MySQL/MariaDB:
sudo yum install mysql-server -y
- 启动MySQL并设置开机自启:
sudo systemctl start mysqld sudo systemctl enable mysqld
- 获取root用户临时密码:
sudo grep 'temporary password' /var/log/mysqld.log
- 登录MySQL并修改root密码:
mysql -u root -p ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourStrongPassword'; # 替换为强密码
- 创建数据库和用户:
CREATE DATABASE your_database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'your_database_user'@'localhost' IDENTIFIED BY 'your_database_password'; GRANT ALL PRIVILEGES ON your_database_name.* TO 'your_database_user'@'localhost'; FLUSH PRIVILEGES;
- 退出MySQL:
EXIT; ```。
八、设置权限与启动项目
- 设置项目目录权限(避免权限问题导致无法访问):
sudo chown -R nginx:nginx /path/to/your/thinkphp/project # CentOS 7默认Nginx用户为nginx sudo chmod -R 755 /path/to/your/thinkphp/project
- 启动ThinkPHP内置服务器(仅开发环境使用):
浏览器访问cd /path/to/your/thinkphp/project php think run
http://your_server_ip:8000
,若看到ThinkPHP欢迎页面则说明部署成功。
九、常见问题排查
- 502 Bad Gateway:检查PHP-FPM是否运行(
sudo systemctl status php-fpm
),确认Nginx配置中的fastcgi_pass
路径与PHP-FPM监听路径一致(/run/php-fpm/www.sock
)。 - 路由失效:确保Nginx配置中包含
try_files $uri $uri/ /index.php?$query_string;
,且项目public/.htaccess
文件未被删除(若使用Apache)。 - Composer安装慢:配置国内镜像加速(
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何在centos上搭建thinkphp开发环境
本文地址: https://pptw.com/jishu/717376.html