温馨提示×

ubuntu thinkphp如何配置

小樊
39
2026-09-16 18:23:15
栏目: 编程语言

下面以 Ubuntu + Nginx/Apache + PHP + ThinkPHP 为例,给你一份从零开始的可操作配置指南(以 ThinkPHP 6/8 为例,5.1 也类似)。


一、环境准备(Ubuntu)

1. 更新系统

sudo apt update
sudo apt upgrade -y

2. 安装 PHP(推荐 PHP 8.1+)

sudo apt install php php-cli php-fpm php-mysql php-mbstring php-xml php-curl php-zip -y

查看版本:

php -v

二、安装 Web 服务器(二选一)

✅ 方案 A:Nginx(推荐)

sudo apt install nginx -y

三、部署 ThinkPHP 项目

1. 安装 Composer

sudo apt install composer -y

2. 创建项目

cd /var/www
composer create-project topthink/think tpapp

目录结构:

/var/www/tpapp

3. 设置权限

sudo chown -R www-data:www-data /var/www/tpapp
sudo chmod -R 755 /var/www/tpapp

四、Nginx 配置(重点)

1. 新建站点配置

sudo nano /etc/nginx/sites-available/tpapp

2. 配置内容(⚠️ 核心)

server {
    listen 80;
    server_name yourdomain.com;  # 或 localhost

    root /var/www/tpapp/public;
    index index.php index.html;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php-fpm.sock;
    }

    location ~ /\.ht {
        deny all;
    }
}

3. 启用站点

sudo ln -s /etc/nginx/sites-available/tpapp /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

五、Apache 配置(可选)

sudo apt install apache2 libapache2-mod-php -y

开启 Rewrite

sudo a2enmod rewrite

站点配置

<VirtualHost *:80>
    DocumentRoot /var/www/tpapp/public
    <Directory /var/www/tpapp/public>
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>
sudo systemctl restart apache2

六、ThinkPHP 基础配置

1. 配置文件位置

/var/www/tpapp/config/

2. 数据库配置(示例)

// config/database.php
return [
    'default' => 'mysql',
    'connections' => [
        'mysql' => [
            'type'     => 'mysql',
            'hostname' => '127.0.0.1',
            'database' => 'tpdb',
            'username' => 'tpuser',
            'password' => 'password',
            'charset'  => 'utf8mb4',
        ]
    ]
];

七、常见问题排查

❌ 500 错误

tail -f /var/www/tpapp/runtime/log/*

❌ 路由无效

  • 确认 public/.htaccess(Apache)
  • 确认 Nginx try_files

❌ 权限问题

sudo chmod -R 777 runtime

八、访问测试

浏览器访问:

http://服务器IP

看到 ThinkPHP 欢迎页即成功 ✅


如果你告诉我:

  • Ubuntu 版本
  • PHP 版本
  • ThinkPHP 版本(5.1 / 6 / 8)
  • Nginx 还是 Apache

我可以给你完全对应的配置文件

0