Debian 9 系统Nginx-MySQL-PHP环境添加网站

之前文章Debian 9 系统配置PHP-MySQL-Nginx运行环境说到,在Debian 9 系统上配置LNMP运行环境,这次打算来说一下配置好环境之后如何添加网站。

其实,在Nginx-MySQL-PHP环境下,添加网站实际上就是增加一个Nginx配置文件并设置好相关设置信息,然后放置好网站对应文件就行了。

首先,来到Nginx的配置文件目录下,我的习惯是直接在/etc/nginx/conf.d/下直接新建网站配置文件。因为各个系统的差异,有些系统在/etc/nginx/site-available下,但是我更推荐在/etc/nginx/conf.d/新建网站配置文件,这样做就不管在什么系统都能统一管理Nginx的配置文件。

/etc/nginx/conf.d/文件夹下,新建一个配置文件,假如说起名叫linodovultr.conf,注意,文件格式必须为.conf,这样才能被Nginx正确加载到,然后把下面这段代码复制进去:

server {
    listen       80;
    # 所要绑定的域名
    server_name  www.linodovultr.com;

    charset utf-8;

    # 访问日志信息 建议取一个好记切易于分辨的名字
    access_log  /var/log/nginx/linodovultr.access.log  main;
    error_log  /var/log/nginx/linodovultr.error.log  error;

    location / {
        root   /var/www/linodovultr;
        index index.php index.html index.htm;
    }

    # 定义40x错误页
    error_page  404              /404.html;
    location = /404.html {
        root   /usr/share/nginx/html;
    }

    # 定义50x错误页
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # 将相关请求传递给后端的PHP处理器
    location ~ \.php$ {
        root           /var/www/linodovultr;
        # php-fpm 的监听地址  和php-fpm的监听地址一样
        fastcgi_pass   unix:/run/php/php7.0-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}

一个最简单的Nginx网站就这么几行配置就好了。

关键的配置项我在上面都写了注释,根据实际情况进行修改就好了。

保存退出编辑器之后,我们需要让Nginx自行检查配置项是否全部正确,用如下命令检查:

nginx -t

如果配置文件有错误,Nginx会提示错误的原因,我们只需要根据Nginx的提示修改即可,比如说:

root@xxx:/etc/nginx/conf.d# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: [emerg] open() "/etc/nginx/logs/linodovultr.access.log" failed (2: No such file or directory)
nginx: configuration file /etc/nginx/nginx.conf test failed

这个错误是说明Nginx的日志文件保存目录有问题,因为/etc/nginx/logs/目录不存在,我们只需要修改成正确的存放位置即可。

所有配置文件正确无误后,会输出如下信息:

root@xxx:/etc/nginx/conf.d# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

到这一步我们的网站就算新增好了,只需重启一下Nginx及PHP-FPM就能生效。重启命令:

systemctl restart nginx
systemctl restart php7.0-fpm

到上面配置文件指定目录新建一个PHP文件,查看效果:

vim /var/www/linodovultr/info.php

<?php
phpinfo();
?>

浏览器打开,查看效果:
debian-9-nginx-mysql-php-vhost-website-phpinfo

如果访问出错,可以到/var/log/nginx/查看当前网站的日志文件,排查错误。

留下评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注