温馨提示×

ubuntu如何配置thinkphp

小樊
36
2026-10-16 06:58:31
栏目: 编程语言

下面按最常见场景给你一个在 Ubuntu + Nginx/Apache + PHP 下配置 ThinkPHP 的完整流程(以 ThinkPHP 6 为例,5.1 类似)。


一、环境准备

1. 更新系统

sudo apt update
sudo apt upgrade -y

2. 安装 PHP 及常用扩展

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

查看 PHP 版本:

php -v

二、安装 Composer(ThinkPHP 推荐方式)

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
composer -v

三、创建 ThinkPHP 项目

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

目录结构:

/var/www/tp6

设置权限:

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

四、配置 Web 服务器

✅ 方案 A:Nginx(推荐)

1. 安装 Nginx

sudo apt install nginx -y

2. 配置站点

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

内容示例:

server {
    listen 80;
    server_name yourdomain.com;

    root /var/www/tp6/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:/var/run/php/php-fpm.sock;
    }

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

3. 启用站点

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

✅ 方案 B:Apache

sudo apt install apache2 libapache2-mod-php -y

开启重写:

sudo a2enmod rewrite

修改虚拟主机:

sudo nano /etc/apache2/sites-available/000-default.conf
DocumentRoot /var/www/tp6/public

<Directory /var/www/tp6/public>
    AllowOverride All
    Require all granted
</Directory>
sudo systemctl restart apache2

五、配置 ThinkPHP

1. 配置数据库

cp .example.env .env
nano .env

示例:

APP_DEBUG = true

DB_TYPE = mysql
DB_HOST = 127.0.0.1
DB_NAME = tp6
DB_USER = root
DB_PASS = password
DB_PORT = 3306

2. 测试访问

浏览器访问:

http://服务器IP

看到 ThinkPHP 欢迎页即成功 ✅


六、常见问题

1. 页面 404

  • Nginx:未配置 try_files
  • Apache:未开启 mod_rewrite

2. 权限问题

sudo chmod -R 777 runtime

3. 生产环境

APP_DEBUG = false

如果你告诉我:

  • Ubuntu 版本
  • ThinkPHP 版本(5.1 / 6.0 / 8.0)
  • Nginx 还是 Apache

我可以给你更精确的配置。

0 踩