linux

Linux系统中ThinkPHP的部署流程

小樊
43
2025-09-08 16:17:29
栏目: 编程语言

Linux系统部署ThinkPHP的流程如下:

  1. 环境准备

    • 安装基础软件
      • Ubuntu/Debian:sudo apt update && sudo apt install php php-fpm php-mysql php-mbstring php-xml php-curl nginx
      • CentOS/RHEL:sudo yum install php php-fpm php-mysqlnd php-mbstring php-xml php-curl nginx
    • 安装Composer
      curl -sS https://getcomposer.org/installer | php && sudo mv composer.phar /usr/local/bin/composer
  2. 部署ThinkPHP项目

    • 方式1:Composer创建项目(推荐)
      composer create-project topthink/think tp6tp6为项目目录名)。
    • 方式2:手动下载解压
      下载后解压至Web根目录(如/var/www/html)。
  3. 配置Web服务器

    • Nginx
      • 编辑配置文件(如/etc/nginx/sites-available/thinkphp):
        server {
            listen 80;
            server_name yourdomain.com;
            root /path/to/tp6/public;
            index index.php;
            location / { try_files $uri $uri/ /index.php?$query_string; }
            location ~ \.php$ {
                include snippets/fastcgi-php.conf;
                fastcgi_pass unix:/run/php/php-fpm.sock;
            }
        }
        ```。  
        
      • 启用配置并重启:
        sudo ln -s /etc/nginx/sites-available/thinkphp /etc/nginx/sites-enabled/ && sudo systemctl restart nginx
    • Apache
      • 启用mod_rewritesudo a2enmod rewrite
      • 在项目根目录添加.htaccess
        <IfModule mod_rewrite.c>
            RewriteEngine On
            RewriteRule ^(.*)$ public/$1 [L]
        </IfModule>
        ```。  
        
        
  4. 关键配置调整

    • 数据库连接:修改.env文件中的数据库参数(如主机、用户名、密码)。
    • 目录权限:确保runtime目录可写:
      sudo chown -R www-data:www-data /path/to/tp6 && sudo chmod -R 755 /path/to/tp6
  5. 启动与测试

    • 重启Web服务:sudo systemctl restart nginx(或apache2)。
    • 访问项目:通过浏览器输入服务器IP或域名+项目路径(如http://yourdomain.com/tp6/public)。
  6. 优化与安全

    • 生产环境关闭调试模式:修改config/app.phpapp_debugfalse
    • 限制.env文件访问:通过Nginx/Apache配置禁止访问.env
    • 可选:配置HTTPS(使用Let’s Encrypt)。

注意事项

参考来源:

0
看了该问题的人还看了