• 精创网络
  • 精创网络
  • 首页
  • 产品优势
  • 产品价格
  • 产品功能
  • 关于我们
  • 在线客服
  • 登录
  • DDoS防御和CC防御
  • 精创网络云防护,专注于大流量DDoS防御和CC防御。可防止SQL注入,以及XSS等网站安全漏洞的利用。
  • 免费试用
  • 新闻中心
  • 关于我们
  • 资讯动态
  • 帮助文档
  • 白名单保护
  • 常见问题
  • 政策协议
  • 帮助文档
  • 在Ubuntu上快速部署PHP+Nginx环境
  • 来源:www.jcwlyf.com更新时间:2025-02-25
  • 在开发网站或者应用时,PHP和Nginx是两种非常常用的技术栈。PHP作为一款强大的脚本语言,广泛用于动态网站开发,而Nginx则以其高性能、高并发的特点,成为了现代Web服务器的首选之一。在Ubuntu操作系统上部署PHP与Nginx环境,可以为开发者提供一个高效、稳定的开发和生产环境。本文将详细介绍如何在Ubuntu系统上快速部署PHP和Nginx环境,从安装到配置,步骤清晰,易于理解。

    一、安装Nginx Web服务器

    首先,我们需要在Ubuntu上安装Nginx。Nginx是一个高性能的Web服务器,广泛用于静态文件的托管及反向代理服务。使用Nginx作为前端服务器,能够有效分担PHP处理请求的负担,从而提升整体的处理性能。

    在安装之前,首先要更新系统的包管理信息。打开终端,执行以下命令:

    sudo apt update

    然后使用下面的命令安装Nginx:

    sudo apt install nginx

    安装完成后,Nginx将自动启动。你可以通过以下命令检查Nginx的状态:

    sudo systemctl status nginx

    如果一切正常,系统会显示Nginx服务正在运行。接下来,可以通过浏览器访问服务器的IP地址来确认Nginx是否已成功安装。如果一切顺利,您应该能够看到Nginx的欢迎页面。

    二、安装PHP

    接下来,我们需要安装PHP以及与Nginx兼容的PHP-FPM(FastCGI Process Manager)。PHP-FPM是一个专门处理PHP请求的FastCGI实现,它与Nginx配合使用,能够提高PHP处理的效率。

    首先,更新系统的包信息并安装PHP及其相关扩展:

    sudo apt install php-fpm php-mysql

    其中,php-fpm是PHP的FastCGI进程管理器,php-mysql扩展用于支持PHP连接MySQL数据库。如果您的项目中需要其他扩展,可以使用以下命令安装:

    sudo apt install php-curl php-json php-xml php-mbstring

    安装完成后,您可以通过以下命令检查PHP是否安装成功:

    php -v

    如果PHP安装成功,系统将输出PHP的版本信息。

    三、配置PHP-FPM与Nginx的连接

    PHP-FPM安装完毕后,默认配置是可以直接使用的,但为了更好地与Nginx配合,我们需要对PHP-FPM进行一些基本配置。

    首先,打开PHP-FPM的配置文件进行编辑:

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

    在配置文件中,找到以下行并进行修改:

    listen = /run/php/php7.4-fpm.sock

    修改为:

    listen = 127.0.0.1:9000

    这将确保PHP-FPM通过TCP/IP协议与Nginx进行通信。保存并退出配置文件。

    接着,重新启动PHP-FPM服务使配置生效:

    sudo systemctl restart php7.4-fpm

    这样,PHP-FPM就配置好了,并且可以通过端口9000与Nginx进行通信。

    四、配置Nginx与PHP的结合

    现在,我们需要配置Nginx,确保其能够正确地处理PHP请求。首先,编辑Nginx的默认配置文件:

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

    在server块内,修改如下配置:

    server {
        listen 80;
        server_name localhost;
    
        root /var/www/html;
        index index.php index.html index.htm;
    
        location / {
            try_files $uri $uri/ =404;
        }
    
        location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass 127.0.0.1:9000;
            fastcgi_param SCRIPT_FILENAME /var/www/html$fastcgi_script_name;
            include fastcgi_params;
        }
    
        location ~ /\.ht {
            deny all;
        }
    }

    在这个配置中,我们主要做了以下几项修改:

    指定根目录为/var/www/html,确保Nginx能够找到网站文件。

    配置location ~ \.php$块,告诉Nginx遇到PHP文件时,转发到PHP-FPM处理。

    fastcgi_pass 127.0.0.1:9000指定PHP-FPM的监听地址。

    完成配置后,保存并退出编辑器。

    接下来,检查Nginx配置文件是否存在语法错误:

    sudo nginx -t

    如果输出显示没有错误,则可以重新启动Nginx服务:

    sudo systemctl restart nginx

    至此,Nginx和PHP的基本配置就完成了。

    五、测试PHP环境

    为了确认PHP与Nginx是否正确集成,可以创建一个简单的PHP测试文件。在/var/www/html目录下,创建一个名为info.php的文件:

    sudo nano /var/www/html/info.php

    在文件中添加以下代码:

    <?php
    phpinfo();
    ?>

    保存并关闭文件后,在浏览器中访问服务器的IP地址/info.php。如果一切配置正确,您应该能够看到PHP信息页面,显示PHP的版本及其详细配置。

    六、调整防火墙设置

    如果服务器启用了防火墙,您需要确保允许HTTP和HTTPS流量通过。可以使用以下命令来允许Nginx通过UFW(Uncomplicated Firewall):

    sudo ufw allow 'Nginx Full'

    如果一切顺利,您就可以通过浏览器访问您的Nginx和PHP环境了。

    七、总结

    通过本文的介绍,您已经学会了如何在Ubuntu上快速部署PHP与Nginx环境。首先,您安装了Nginx并配置了PHP-FPM,然后在Nginx配置文件中加入了与PHP的结合,最终完成了测试。这样,您就可以开始开发您的PHP项目,享受Nginx提供的高性能服务。

    如果您在配置过程中遇到任何问题,可以参考相关文档或者在社区中寻找解决方案。随着对PHP和Nginx配置的进一步理解,您可以根据实际需求进一步优化性能与安全性。

  • 关于我们
  • 关于我们
  • 服务条款
  • 隐私政策
  • 新闻中心
  • 资讯动态
  • 帮助文档
  • 网站地图
  • 服务指南
  • 购买流程
  • 白名单保护
  • 联系我们
  • QQ咨询:189292897
  • 电话咨询:16725561188
  • 服务时间:7*24小时
  • 电子邮箱:admin@jcwlyf.com
  • 微信咨询
  • Copyright © 2025 All Rights Reserved
  • 精创网络版权所有
  • 皖ICP备2022000252号
  • 皖公网安备34072202000275号