php nginx 安装配置的方法

藏色散人
发布: 2020-11-04 10:17:58
原创
3983人浏览过
php nginx安装配置的方法:首先找到Nginx的配置文件;然后在vim中点击“i”进入编辑模式;接着使用FastCGI协议默认配置;最后重启Nginx服务即可。

php nginx 安装配置的方法

推荐:《PHP视频教程

写在前面

在学习搭建LNMP环境的过程中初识Nginx(读法:engine x),感觉完全复制粘贴网上的安装配置方法没有什么意义,就打算展开学习一下。

关于Windows下Nginx的安装和配置:Windows下的Nginx安装与配置(PHP)

工作环境

  • 腾讯云 1核 1GB 1Mbps 云服务器
  • CentOS 7.2 64位
  • 已经安装了PHP
  • 使用putty链接服务器

书面信息

Nginx:俄罗斯工程师Igor Sysoev开发,高性能的HTTP/反向代理/邮件服务器。

立即学习PHP免费学习笔记(深入)”;

安装

CentOS下安装:

#使用yum安装,-y表示对所有的提问都回答“yes”,install为安装指令yum -y install nginx
登录后复制

安装Nginx

配置

Nginx的配置文件默认位置为:/etc/nginx/nginx.conf

如果说找不到可以搜索一下:

#locate 搜索文件的位置locate nginx.conf
登录后复制

搜索nginx.conf

如上图,在我的环境中nginx.conf在/etc/nginx/nginx.conf

使用vim打开文件nginx.conf

vim /etc/nginx/nginx.conf
登录后复制

配置文件分析

nginx.conf内容如下(只截取了没被注掉的部分):

nignx.conf默认

# nginx运行的用户名user nginx;# nginx启动进程,通常设置成和cpu的数量相等,这里为自动worker_processes auto;# errorlog文件位置error_log /var/log/nginx/error.log;# pid文件地址,记录了nginx的pid,方便进程管理pid /run/nginx.pid;# Load dynamic modules. See /usr/share/nginx/README.dynamic.# 用来加载其他动态模块的配置include /usr/share/nginx/modules/*.conf;# 工作模式和连接数上限events {    # 每个worker_processes的最大并发链接数
    # 并发总数:worker_processes*worker_connections
    worker_connections 1024;
}# 与提供http服务相关的一些配置参数类似的还有mailhttp {    # 设置日志的格式
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';    # access_log记录访问的用户、页面、浏览器、ip和其他的访问信息
    access_log  /var/log/nginx/access.log  main;    # 这部分下面会单独解释
    # 设置nginx是否使用sendfile函数输出文件
    sendfile            on;    # 数据包最大时发包(使用Nagle算法)
    tcp_nopush          on;    # 立刻发送数据包(禁用Nagle算法)
    tcp_nodelay         on;    # 链接超时时间
    keepalive_timeout   65;    # 这个我也不清楚...
    types_hash_max_size 2048;    # 引入文件扩展名与文件类型映射表
    include             /etc/nginx/mime.types;    # 默认文件类型
    default_type        application/octet-stream;    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;    # http服务上支持若干虚拟主机。
    # 每个虚拟主机一个对应的server配置项
    # 配置项里面包含该虚拟主机相关的配置。
    server {        # 端口
        listen       80 default_server;        listen       [::]:80 default_server;        # 访问的域名
        server_name  _;        # 默认网站根目录(www目录)
        root         /usr/share/nginx/html;        # Load configuration files for the default server block.

        include /etc/nginx/default.d/*.conf;        # 默认请求
        location / {
        }        # 错误页(404)
        error_page 404 /404.html;            location = /40x.html {
        }        # 错误页(50X)
        error_page 500 502 503 504 /50x.html;            location = /50x.html {
        }
    }
}
登录后复制

值得说明的几点

  1. 关于error_log 可以设置log的类型(记录什么级别的信息)有:debug、info、notice、warn、error、crit几种

    电子手机配件网站源码1.0
    电子手机配件网站源码1.0

    电子手机配件网站源码是一个响应式的织梦网站模板,软件兼容主流浏览器,且可以在PC端和手机端中进行浏览。模板包含安装说明,并包含测试数据。本模板基于DEDECms 5.7 UTF-8设计,需要GBK版本的请自己转换。模板安装方法:1、下载最新的织梦dedecms5.7 UTF-8版本。2、解压下载的织梦安装包,得到docs和uploads两个文件夹,请将uploads里面的所有文件和文件夹上传到你的

    电子手机配件网站源码1.0 0
    查看详情 电子手机配件网站源码1.0
  2. 关于sendfile
    一般的网络传输过程
    硬盘 youjiankuohaophpcn> kernel buffer >> user buffer>> kernel socket buffer >>协议栈
    使用sendfile后
    硬盘 >> kernel buffer (快速拷贝到kernelsocket buffer) >>协议栈
    可以显著提高传输性能。

  3. tcp_nopush和tcp_nodelay
    tcp_nopush只有在启用了sendfile时才起作用,
    在启用tcp_nopush后,程序接收到了数据包后不会马上发出,而是等待数据包最大时一次性发出,可以缓解网络拥堵。(Nagle化)
    相反tcp_nodelay则是立即发出数据包.

配置

分析完了配置文件后开始配置环境。

因为只是配置PHP的服务器,而且只使用一个端口所以只需要改动server部分

在vim中点击‘i’进入编辑模式。

server {        listen       80 default_server;        listen       [::]:80 default_server;        # 这里改动了,也可以写你的域名
        server_name  localhost;        root         /usr/share/nginx/html;        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;        location / {            # 这里改动了 定义首页索引文件的名称
            index index.php index.html index.htm;
        }        error_page 404 /404.html;            location = /40x.html {
        }        error_page 500 502 503 504 /50x.html;            location = /50x.html {
        }        # 这里新加的
        # PHP 脚本请求全部转发到 FastCGI处理. 使用FastCGI协议默认配置.
        # Fastcgi服务器和程序(PHP,Python)沟通的协议.
        location ~ \.php$ {            # 设置监听端口
            fastcgi_pass   127.0.0.1:9000;            # 设置nginx的默认首页文件(上面已经设置过了,可以删除)
            fastcgi_index  index.php;            # 设置脚本文件请求的路径
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;            # 引入fastcgi的配置文件
            include        fastcgi_params;
        }
    }
登录后复制

修改完成后将vim编辑器切换到一般一半模式(Esc),然后输入:wq保存退出。

之后重启Nginx服务

service nginx restart
登录后复制

以上就配置成功了,但是上面的配置只是nginx配置部分,更多的内容需要继续学习。

测试

我们可以通过下面的方法判断Nginx配置是否成功。

  1. 在Nginx的网站根目录(/usr/share/nginx/html)下创建一个php文件,随便起名我的是phpinfo.php

    内容如下:

    <?php
    
        // 顺便可以看一下php的扩展全不全
        phpinfo();
    登录后复制
  2. 进入你的网站看看能不能打开文件
    你的ip/文件名 例如:localhost/phpinfo.php

这里写图片描述

我的成功了~~

以上就是php nginx 安装配置的方法的详细内容,更多请关注php中文网其它相关文章!

相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号