如何正确配置Nginx + PHP

下面就是详细讲解如何正确配置Nginx + PHP的完整攻略。

1. 安装Nginx和PHP

首先需要安装Nginx和PHP。可以使用以下命令:

sudo apt-get update
sudo apt-get install nginx
sudo apt-get install php-fpm php-mysql

2. 配置Nginx

在配置Nginx之前,需要先停止Nginx服务并备份Nginx默认配置文件。

sudo service nginx stop
sudo mv /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bak

然后创建一个新的配置文件。

sudo nano /etc/nginx/sites-available/mywebsite

在该文件中,添加以下配置:

server {
    listen 80 defaults_server;
    root /var/www/mywebsite;
    index index.php index.html index.htm;
    server_name mywebsite.com;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param QUERY_STRING $query_string;
        fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
    }

    location ~ /\.ht {
        deny all;
    }
}

以上配置假设网站的根目录为/var/www/mywebsite,确保根目录和网站文件存在,并替换服务器名为你自己的网站名称。

最后,将新配置文件链接到sites-enabled文件夹中以使其生效。

sudo ln -s /etc/nginx/sites-available/mywebsite /etc/nginx/sites-enabled/

3. 配置PHP

编辑PHP FPM的默认配置文件。

sudo nano /etc/php/7.2/fpm/pool.d/www.conf

找到以下行并确保其正确配置。

listen = /var/run/php/php7.2-fpm.sock

4. 重新启动服务并检查

重新启动Nginx和PHP FPM服务。

sudo service nginx restart
sudo service php7.2-fpm restart

检查服务状态以确保正确启动。

sudo service nginx status
sudo service php7.2-fpm status

5. 示例说明

示例1:PHP文件解析

在Nginx服务器上创建一个名为info.php的PHP文件,它包含以下代码:

<?php phpinfo(); ?>

放到网站的根目录/var/www/mywebsite。使用浏览器访问http://mywebsite.com/info.php,能够看到PHP信息页面。

示例2:Nginx服务器静态文件服务

在网站根目录创建一个名为hello.html的HTML文件,包含以下HTML代码:

<!DOCTYPE html>
<html>
<head>
    <title>Hello World!</title>
</head>
<body>
    <h1>Hello World!</h1>
</body>
</html>

使用浏览器访问http://mywebsite.com/hello.html,能够看到该静态网页。

以上就是如何正确配置Nginx + PHP的完整攻略以及两个示例说明。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:如何正确配置Nginx + PHP - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • centos 安装nginx遇到的问题

    1、 checking for OS+ Linux 3.10.0-327.el7.x86_64 x86_64checking for C compiler … not found ./configure: error: C compiler cc is not found 解决方法:安装gcc yum -y install gcc 2、the HTTP …

    Nginx 2023年4月12日
    00
  • nginx 通过IP访问项目

    项目新需求,因为是小范围使用的网站,所以不打算配域名,直接通过IP访问当前项目。 环境: LNMP 一键集成环境 当前IP指向的目录 :/home/wwwroot/default/ 但是我的项目。需要它指向到当前目录的Code目录里面的public 所以:、 1.进入nignx目录。   2.  在这里添加上需要访问的目录 然后保存退出 3. # vim n…

    Nginx 2023年4月11日
    00
  • Nginx系列~Nginx服务启动不了

    Nginx服务有时起动不了了,原因是80端口为其它应用程序占用了,这时,我们需要查看是哪个程序占用了它,可能是IIS的某个站点,或者Tomat,Apache等,都有可能,所以,我们需要查看一下电脑80端口的使用情况,使用下面命令 netstat -aon|findstr “:80” 看一下结果 这时,我们并没有看到本机有被PID为4的进程占用,在任务管理器里…

    Nginx 2023年4月16日
    00
  • nginx的基本命令

    whereis nginx查看nginx的目录    /usr/sbin/nginx          yum安装的nginx也可以使用         servic nginx start  启动nginx进程   ps -ef |grep nginx查看nginx的进程号   nginx -s reload 优雅重启nginx/重新加载配置文件   ng…

    Nginx 2023年4月11日
    00
  • nginx安装及配置支持php的教程(全)

    这里是详细讲解“nginx安装及配置支持php的教程(全)”的完整攻略。 1. 安装Nginx 安装Nginx,可以从官网下载适合自己操作系统的版本,也可以使用Linux发行版自带的软件包管理器进行安装。例如在ubuntu中可以通过以下命令进行安装: sudo apt-get install nginx 2. 配置Nginx支持PHP 2.1 安装PHP 我…

    Nginx 2023年5月16日
    00
  • K8S Pod Sidecar 应用场景之一-加入 NGINX Sidecar 做反代和 web 服务器

    Kubernetes Pod Sidecar 简介 Sidecar 是一个独立的容器,与 Kubernetes pod 中的应用容器一起运行,是一种辅助性的应用。 Sidecar 的常见辅助性功能有这么几种: 服务网格 (service mesh) 代理 监控 Exporter(如 redis exporter) ConfigMap 或/和 Secret R…

    Nginx 2023年4月13日
    00
  • nginx做本地目录映射 nginx做本地目录映射

        有时候需要访问服务器上的一些静态资源,比如挂载其他设备上的图片到本地的目录,而本地的目录不在nginx根目录下,这个时候就需要简单的做一下目录映射来解决,比如想通过浏览器http://ip/image/2016/04/29/10/abc.jpg访问到系统目录/image_data/2016/04/29/10/abc.jpg需要在nginx.conf中…

    Nginx 2023年4月11日
    00
  • 【nginx】 FastCGI sent in stderr: “Primary script unknown” while reading response header from upstream

      2013/10/22 20:05:49 [error] 12691#0: *6 FastCGI sent in stderr: “Primary script unknown” while reading response header from upstream, client: 192.168.168.1, server: localhost, re…

    Nginx 2023年4月12日
    00
合作推广
合作推广
分享本页
返回顶部