Nginx 服务器部署 php 项目

示例的服务器操作系统为 ubuntu

默认的网站根目录 /var/www/html,可以把项目拷贝到该目录下,也可在/var/www目录下建立目录。我们把项目放在 /var/www/目录下: /var/www/project_name.

然后将 Nginx 的用户名和用户组 www-data 分配给它:

#进入 /var/www 目录
cd /var/www

#分配用户名和用户组
chown -R www-data:www-data project_name

配置 Nginx:

nginx 的默认配置位于 /etc/nginx/sites-available/default

server {
        listen 80 default_server;
        listen [::]:80 default_server;

        # SSL configuration
        #
        # listen 443 ssl default_server;
        # listen [::]:443 ssl default_server;

        # 网站根目录,根据实际情况修改
        root /var/www/project_name;

        # Add index.php to the list if you are using PHP
        index index.php index.html index.htm index.nginx-debian.html;

        server_name _;

        location / {
                try_files $uri $uri/ =404;
        }

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

如果配置一个站点,简单配置如上即可。

Nginx 配置多站点:

1、建立多个项目:

/var/www/project1
/var/www/project2

2、在 /etc/nginx/sites-available/ 目录下新建配置 project1(或拷贝default,重命名为 project1):

server{
        listen 80 default_server;
        listen [::]:80 default_server ipv6only=on;

        #网站域名,根据自己的域名修改,如果只是本机用来开发测试,可自定义
        server_name www.project1.com;

        #项目目录地址
        root /var/www/project1;
        index index.html index.php;

        location / {
                try_files $uri $uri/ = 404;

        }

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

project2 配置类似 project1 ,修改相应的域名、项目目录即可。

3、建立 /etc/nginx/sites-available//etc/nginx/sites-enable 的软连接

cd  /etc/nginx/sites-available

ln -s  project1 /etc/nginx/sites-enable
ln -s  project2 /etc/nginx/sites-enable

/etc/nginx/sites-enable 文件夹中的配置为当前可用的配置

4、修改 hosts

vi /etc/hosts

hosts 文件中添加:

127.0.0.1  www.project1.com
127.0.0.1  www.project2.com

保存。

5、重启 Nginx

service nginx restart

在浏览器中访问 www.project1.com 、www.project2.com 测试是否配置成功。

转载请注明出处:https://www.hellocode.wang/article/nginx-deploy-php-project

评论

  1. ifs  #1

    你好,我最近遇到了一个很棘手的问题。我的bos送给我分配了一个服务器的账号,但是我不能在里面下载东西,该怎么办啊

    回复