安装

  • 查看操作系统

不确定具体操作系统,进行探测: cat /etc/redhat-release 如果输出内容包含:CentOS Linux,那么操作系统是CentOS, 如果输出:没有那个文件或目录,那么继续探测; cat /etc/lsb-release 如果输出内容包含:DISTRIB_ID=Ubuntu,那么操作系统是Ubuntu, 如果输出:没有那个文件或目录,那么继续探测; 以上是常用的两个Linux版本。

*友情提示:以下步骤基于操作系统CentOS Linux release 7.2.1511 (Core) *
  • RPM软件包

RPM(redhat package manager):红帽资源包管理体系,将代码基于特定平台系统编译为可执行文件,并保存依赖关系,来简化开源软件的安装管理。

rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
  • YUM安装

rpm软件包形式的管理虽然方便,但是需要手工解决软件包的依赖关系。很多时候安装一个软件安装一个软件需要安装1个或者多个其他软件,手动解决时,很复杂,yum解决这些问题。

yum install nginx
  • 启动服务
service nginx start

配置

通俗配置
  • 查看nginx安装目录
whereis nginx
nginx: /usr/sbin/nginx /usr/lib64/nginx /etc/nginx /usr/share/nginx /usr/share/man/man8/nginx.8.gz
  • 克隆默认配置文件

配置文件目录:/etc/nginx 配置文件加载顺序:nginx.conf --> conf.d/*.conf 默认 conf.d 目录下存在 default.conf XXX.conf 心仪的文件名

*友情提示:执行命令当前目录 /etc/nginx/conf.d/,按需调整。
cp default.conf XXX.conf
  • 备份默认配置文件

通俗情况 nginx.conf 不需要修改,则备份 conf.d 目录下 default.conf,并跳出 nginx.conf 中扫描范围 include /etc/nginx/conf.d/*.conf。

mv default.conf default.conf.bak
  • 修改配置文件
cat /etc/nginx/conf.d/XXX.conf
server {
    listen       8888; // 监听端口
    server_name  localhost; // 服务名称

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    location / {
            root   html;
            index  index.html index.htm;
            proxy_pass http://127.0.0.1:8080/; 
    }
		
    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    #location ~ \.php$ {
    #    root           html;
    #    fastcgi_pass   127.0.0.1:9000;
    #    fastcgi_index  index.php;
    #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
    #    include        fastcgi_params;
    #}

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}
  • 重启nginx

修改配置文件重启生效

service nginx restart