linux系统简单部署php

1 环境搭建

1.1 安装lnmp集成环境

1.1.1 参照官网链接 lnmp官网

1.1.2 按步骤进行

  • 在线获取文件并安装

wget https://soft.lnmp.com/lnmp/lnmp2.0.tar.gz -O lnmp2.0.tar.gz && tar zxf lnmp2.0.tar.gz && cd lnmp2.0 && ./install.sh lnmp
  • 选择mysql版本,5.7.x        

  • 设置数据库密码,其它常规的直接回车去默认值:

  • 选择php版本,7.4.33,其它默认(如果php安装失败,可以降低php的版本重新安装试试)

  • 点击回车,开始安装

1.2 安装git环境

安装git网上一大堆,这里不多赘述

安装git是方便更新代码,用其他方式更新也可以

2 部署步骤

2.1 下拉最新代码

到要放项目的文件夹下拉代码,使用git拉取或者直接上传都可以

git clone https://.............

2.2 部署

2.2.1 设置项目文件夹权限

项目运行时会在产生临时文件,项目又是依赖于nginx运行,所以需要给nginx这个文件夹的读写权限

查看nginx的配置文件,我们可以看到,nginx的用户权限是www,所以需要把项目的用户权限改成www

设置文件用户权限:

chown -R www:www 文件名

2.2.2 创建xxx.conf配置文件

在/usr/local/nginx/conf/vhost/目录下创建xxx.conf配置文件

这里需要注意两个地方,server_nameroot

server_name是服务器ip或项目域名

root是项目文件的public目录

server
{
        listen 80;
        #listen [::]:80;
        server_name 服务器ip或项目域名;
        index index.html index.htm index.php default.html default.htm default.php;
        root  项目public/目录(例:/home/xxx/项目文件/public/);
 
        include rewrite/thinkphp.conf;
        #error_page   404   /404.html;
 
        # Deny access to PHP files in specific directory
        #location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }
 
        include enable-php-pathinfo.conf;
 
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            expires      30d;
        }
 
        location ~ .*\.(js|css)?$
        {
            expires      12h;
        }
 
        location ~ /.well-known {
            allow all;
        }
 
        location ~ /\.
        {
            deny all;
        }
 
        access_log  /home/wwwlogs/xxx.log;
    }
 

2.2.3 修改fastcgi.conf配置文件

修改“/usr/local/nginx/conf/fastcgi.conf”配置文件

修改 “fastcgi_param” 参数 PHP_ADMIN_VALUE 为 "open_basedir=$document_root/:/home/xxxxxx/(项目所在目录):/tmp/:/proc/

2.2.4 重启nginx

lnmp nginx restart

到这里php项目部署就完成了

在浏览器访问服务器ip或域名就可以了,如果没有找到项目,可能是nginx的主配置文件没有引入我们创建的xxx.conf配置文件

修改后重启nginx

lnmp nginx restart

在浏览器访问服务器ip或域名