发布于2026-07-28 阅读(0)
扫一扫,手机访问
首先,确保你的CentOS系统已经更新到最新版本,并且装好了基础开发工具,比如gcc、make这些。这一步很基础,但别跳过——少了它后面会处处碰壁。

sudo yum update -y
sudo yum groupinstall "Development Tools" -y
ThinkPHP 8.x 要求 PHP 版本不低于 8.0,所以我们需要安装 PHP 核心、CLI、FPM,以及常用的扩展(比如 mysqlnd、gd、mbstring 等)。推荐通过 Remi 仓库来安装,它能提供最新的 PHP 版本,省心很多。
sudo yum install epel-release -y
sudo yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
# CentOS 7
# CentOS 8 需替换为对应 Remi 仓库地址sudo yum-config-manager --enable remi-php80sudo yum install php php-cli php-fpm php-mysqlnd php-gd php-mbstring php-xml php-curl php-bcmath -ysudo systemctl start php-fpm
sudo systemctl enable php-fpmphp -v输出应该能看到 PHP 8.x 的版本信息,到这步就算装好了。ThinkPHP 需要 Web 服务器来处理 HTTP 请求,Nginx 是首选方案——高性能、轻量级,配置也简单。
sudo yum install nginx -ysudo systemctl start nginx
sudo systemctl enable nginx编辑 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文件
}
}
sudo nginx -t如果输出 syntax is ok,就重启 Nginx 让配置生效:sudo systemctl restart nginxThinkPHP 项目依赖 Composer 来管理,安装步骤如下:
sudo yum install unzip git -ycurl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composercomposer --version能看到版本号就说明装好了。cd /path/to/your/thinkphp/projectcomposer 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_ # 表前缀(可选)sudo yum install mysql-server -ysudo systemctl start mysqld
sudo systemctl enable mysqldsudo grep 'temporary password' /var/log/mysqld.logmysql -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;EXIT;sudo chown -R nginx:nginx /path/to/your/thinkphp/project
# CentOS 7默认Nginx用户为nginx
sudo chmod -R 755 /path/to/your/thinkphp/projectcd /path/to/your/thinkphp/project
php think run在浏览器里访问 http://your_server_ip:8000,如果看到 ThinkPHP 的欢迎页面,那就说明部署成功了。sudo systemctl status php-fpm),确认 Nginx 配置中的 fastcgi_pass 路径与 PHP-FPM 监听路径一致(通常是 /run/php-fpm/www.sock)。try_files $uri $uri/ /index.php?$query_string;,而且项目 public/.htaccess 文件没有被删除(如果用的是 Apache 的话)。composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/,速度会快很多。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8