在Linux下部署ThinkPHP项目,你需要遵循以下步骤:
安装Web服务器(如Nginx或Apache): 以Nginx为例,首先确保你已经安装了Nginx。如果没有,请使用以下命令安装:
sudo apt-get update
sudo apt-get install nginx
安装PHP环境: 你需要安装PHP以及PHP-FPM。可以使用以下命令安装:
sudo apt-get install php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-pear php-bcmath
配置PHP-FPM:
编辑/etc/php/7.x/fpm/pool.d/www.conf
文件(将7.x替换为你的PHP版本),找到以下行:
listen = /run/php/php7.x-fpm.sock
记住这个路径,稍后我们需要在Nginx配置中使用它。
配置Nginx:
编辑Nginx的默认站点配置文件/etc/nginx/sites-available/default
,或者创建一个新的站点配置文件。在server
块中,添加以下内容:
location / {
root /path/to/your/thinkphp/project; # 替换为你的ThinkPHP项目路径
index index.php index.html index.htm;
server_name yourdomain.com; # 替换为你的域名或公网IP
location ~ \.php$ {
fastcgi_pass unix:/run/php/php7.x-fpm.sock; # 使用之前记住的路径
fastcgi_index index.php;
include fastcgi.conf;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}
保存并退出。
重启Nginx和PHP-FPM服务:
sudo service nginx restart
sudo service php7.x-fpm restart # 将7.x替换为你的PHP版本
配置防火墙:
如果你的服务器运行在公网上,确保你已经配置了防火墙,允许HTTP和HTTPS流量。例如,使用ufw
防火墙:
sudo ufw allow http
sudo ufw allow https
sudo ufw enable
部署ThinkPHP项目:
将你的ThinkPHP项目上传到服务器上的指定目录(在步骤4中的root
指令中指定的路径)。
运行项目: 在项目目录下运行以下命令,生成应用目录和运行目录:
cd /path/to/your/thinkphp/project
chmod -R 755 runtime
chmod -R 755 application
现在,你应该可以通过访问http://yourdomain.com
来访问你的ThinkPHP项目了。如果遇到问题,请检查Nginx和PHP-FPM的错误日志,以便找到并解决问题。