安装Nginx方法一:利用u盘导入Nginx软件包

二nginx -t 用于检测配置文件语法

如下报错1:配置文件43行出现错误

[root@www ~]# nginx -t
nginx: [emerg] "location" directive is not allowed here in /usr/local/nginx/conf/nginx.conf:43
nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed

如下错误2:worker里面工作区出现问题

[root@www ~]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: [warn] 10240 worker_connections exceed open file resource limit: 1024
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

解决办法:

[root@www ~]# ulimit -n 10240

main(全局设置)、server(主机设置)、upstream(负载均衡服务器设置)和 location(URL匹配特定位置的设置)。

    main块设置的指令将影响其他所有设置;
server块的指令主要用于指定主机和端口;
upstream指令主要用于负载均衡,设置一系列的后端服务器;
location块用于匹配网页位置。

=============================================================

创建单个基于域名的虚拟主机并测试

[root@localhost ~]# rpm -q httpd                         //有httpd软件必须删除

未安装软件包 httpd

安装支持软件
[root@localhost ~]# rpm -q gcc gcc-c++ zlib-devel pcre-devel make
[root@localhost ~]# yum -y install gcc gcc-c++ zlib-devel pcre-devel make

完毕!

创建运行用户、组
[root@localhost ~]# useradd -M -s /sbin/nologin nginx
[root@localhost ~]# tail -l /etc/passwd ;tail -l /etc/group

导入nginx软件包
[root@localhost ~]# rz -E                                       
rz waiting to receive.
[root@localhost ~]# ls
anaconda-ks.cfg   initial-setup-ks.cfg  nginx-1.16.0.tar.gz   original-ks.cfg
[root@localhost ~]# tar xf nginx-1.16.0.tar.gz -C /usr/src
[root@localhost ~]# cd /usr/src/nginx-1.16.0/

编译安装 Nginx
[root@localhost nginx-1.16.0]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module  --with-stream --with-http_gzip_static_module && make && make install

--prefix 设定Nginx的安装目录

--user和--group 指定Nginx运行用户和组

--with-http_stub_status_module 启用http_stub_status_module模块以支持状态统计

--with-http_ssl_module 启用SSL模块

--with-http_flv_module 启用FLV模块,提供寻求内存使用基于时间的偏移量文件

--with-stream 用于做七层,四层负载的模块

[root@localhost nginx-1.16.0]# cd

为主程序 nginx  创建链接文件
[root@localhost ~]# ls /usr/local/nginx/
conf   html  logs     sbin

[root@localhost ~]#ln -sf /usr/local/nginx/sbin/nginx /usr/local/sbin/
[root@localhost ~]# ll /usr/local/sbin/nginx
lrwxrwxrwx. 1 root root 27 9月 10 17:12 /usr/local/sbin/nginx -> /usr/local/nginx/sbin/nginx

Nginx 的运行控制方法
手动方法控制 Nginx:
nginx -t 检测配置文件语法
执行 nginx 主程序启动 Nginx

编写 nginx  服务脚本

[root@localhost ~]# vim /etc/init.d/nginx

#!/bin/bash
# chkconfig: 2345 99 20
# description: Nginx Server Control Scripts shell
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"

case "$1" in
start)
     $PROG
;;
stop)
     kill -s QUIT $(cat $PIDF)
;;
restart)
    $0 stop
    $0 start
;;
reload)
    kill -s HUP $(cat $PIDF)
;;
*)
    echo "Usage: $0 {start|stop|restart|reload}"
    exit 1
esac
exit 0

[root@localhost ~]# chmod +x /etc/init.d/nginx

Nginx  修改主配置文件

[root@localhost ~]# cd /usr/local/nginx/conf/
[root@localhost conf]# cp nginx.conf nginx.conf.origin
[root@localhost conf]# vim nginx.conf

user  nginx nginx;                           //nginx的程序账户及程序组
worker_processes ; //指定进程数一般与cpu数量一致
worker_cpu_affinity ; //为每个进程分配核心数
error_log logs/error.log info; //全局错误日志文件位置
pid logs/nginx.pid; //PID文件的位置
events {
use epoll; //使用epoll模型
worker_connections ; //每个进程允许的最多的连接数默认为1024一般10000以下
}
http {
include mime.types;
default_type application/octet-stream; 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 logs/access.log main; //访问日志位
sendfile on; //支持文件发送超时
keepalive_timeout ;
server { //web服务的监听配置
listen ; //监听地址及端口(IP:PORT)
        server_name  localhost;     //网站名称(FQDN)        
charset utf-; //网页的默认字符集
access_log logs
/localhost.access.log main;
location / { //根目录配置
root
html; //网站根目录的位置安装位置的html中
index index.html index.htm; //默认首页
}

error_page 500 502 503 504 /50x.html;       //内部错误的反馈页面
       location =/50x.html {                     //错误页面配置
           root html;
        }
    }
}

 

[root@localhost ~]# nginx -t             //检测语法错误
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@localhost ~]# nginx               //启动nginx服务

[root@localhost ~]# killall -HUP nginx

[root@localhost ~]# netstat -anpt | grep nginx
tcp     0           0 0.0.0.0:80              0.0.0.0:*               LISTEN 64726/nginx: master

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# iptables -F
[root@localhost ~]# setenforce 0

nginx安装完成

安装Nginx方法二:

从官网下载相应的源码包:

Nginx下载地址:http://nginx.org/en/download.html

[root@localhost ~]#wget http:;//nginx.org/download/nginx-1.14.2.tar.gz
[root@localhost ~]#tar xf nginx-1.14.2.tar.gz -C /usr/src
[root@localhost ~]#cd /usr/src/nginx-1.14.2
[root@localhost nginx-1.14.2]#yum install gcc gcc-c++ make zlib-devel pcre-devel -y
[root@localhost nginx-1.16.0]#./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
&& make && make install

[root@localhost nginx-1.17.4]# cd /usr/share/vim/vimfiles/                  //拷入相应的语法

[root@localhost ~]# cd /usr/local/nginx/conf/

[root@localhost conf]# vim nginx.conf

user  nginx nginx;                           //nginx的程序账户及程序组
worker_processes ; //指定进程数一般与cpu数量一致
worker_cpu_affinity ; //为每个进程分配核心数
error_log logs/error.log info; //全局错误日志文件位置
pid logs/nginx.pid; //PID文件的位置
events {
use epoll; //使用epoll模型
worker_connections ; //每个进程允许的最多的连接数默认为1024一般10000以下
}
http {
include mime.types;
default_type application/octet-stream; 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 logs/access.log main; //访问日志位
sendfile on; //支持文件发送超时
keepalive_timeout ;
server { //web服务的监听配置
listen ; //监听地址及端口(IP:PORT)
server_name localhost; //网站名称(FQDN)
charset utf-; //网页的默认字符集
access_log logs/localhost.access.log main;
location / { //根目录配置
root html; //网站根目录的位置安装位置的html中
index index.html index.htm; //默认首页
} error_page /50x.html; //内部错误的反馈页面
location =/50x.html { //错误页面配置
root html;
}
}
}

Nginx安装部署!的更多相关文章

  1. Nginx安装部署与测试

    场景:项目需要部署在生产环境中,这些新的工具都需要在生产环境中去实践练习.有时间再部署一套ELK的日志分析系统,这样的系统才算具有一定的应用价值. 1 Nginx安装 用root用户安装,采用源代码编 ...

  2. nginx安装部署(支持https)

    1      安装环境准备 1.1   准备环境清单 以下是基本环境清单列表: 软件名称 版本号 说明信息 Linux CentOS 6.7 部署机器只需为Linux系统即可,无严格要求 1.2   ...

  3. 云服务器内,nginx安装部署,Xshell,Xftp安装

    nginx部署 三丰云云服务器,安装nginx nginx部署 在宝塔面板,添加Nginx安装,一般进来会默认推荐安装几款软件,mysql等,暂时可以后面再装,先把nginx装上去,去感受将前端页面放 ...

  4. Nginx安装部署

    Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sysoev ...

  5. Nginx安装部署以及配置文件解析

    Nginx 中的 Location 指令 是NginxHttpCoreModule中重要指令.Location 指令,是用来为匹配的 URI 进行配置,URI 即语法中的”/uri/”,可以是字符串或 ...

  6. linux centos7 nginx 安装部署和配置

    1/什么是NginxNginx("enginex")是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器,在高连接并发的情况下Nginx是Apac ...

  7. Linux中Nginx安装部署

    前言 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sys ...

  8. Centos 6.5 下Nginx安装部署https服务器

    一般我们都需要先装pcre, zlib,前者为了重写rewrite,后者为了gzip压缩.1.选定源码目录选定目录 /usr/local/cd /usr/local/2.安装PCRE库cd /usr/ ...

  9. nginx安装部署+增加媒体播放模块

    nginx安装很简单,但是有的时候是已经安装的nginx ,升级增加nginx 模块功能. 最近公司要nginx增加一个可以播放 MP4的模块,安装还算顺利,不说废话上命令. 1 安装依赖 yum i ...

随机推荐

  1. C#中数据类型char*,const char*和string的三者转换

    C#中数据类型char*,const char*和string的三者转换: . const char* 和string 转换 () const char*转换为 string,直接赋值即可. EX: ...

  2. bistoury建库建表(一)

    bistoury DROP TABLE IF EXISTS bistoury_app; CREATE TABLE bistoury_app( id INT UNSIGNED auto_incremen ...

  3. python 常用包之xml文件处理

    1,处理xml的包 from xml.etree import ElementTree as ET 2,如何写出xml文件 xml文件和html中的元素很像,有父级子集之说, root = ET.El ...

  4. python开发基础03-列表、元组、字典、集合操作方法汇总

    列表 创建列表: li = [1, 12, 9, "age", ["石振文", ["19", 10], "庞麦郎"], ...

  5. 树链剖分-Hello!链剖-[NOIP2015]运输计划-[填坑]

    This article is made by Jason-Cow.Welcome to reprint.But please post the writer's address. http://ww ...

  6. Windows10_64位下upload-labs靶场搭建+phpstudy_v8.1安装教程

     之前介绍了Windows10_64位搭建WampServer的教程,这一次再来水一篇phpstudy的搭建教程.哈哈哈.     顺便安装一下upload-labs,搭着玩玩~         操作 ...

  7. AcWing 849. Dijkstra求最短路 I 朴素 邻接矩阵 稠密图

    //朴素Dijkstra 边权都是正数 稠密图:点和边差的比较多 #include<cstring> #include<iostream> #include<algori ...

  8. Servlet获取配置信息(ServletConfig)

    ServletConfig ServletConfig:当Servlet容器初始化Servlet时,Servlet容器会给Servlet的init方法传入一个ServletConfig.Servlet ...

  9. html 打印相关操作与实现

    2020-02-19 | chrome 79.0.3945.130 测试无问题 未做兼容测试 原理为调用 window.print() 方法,但是该方法只能对当前页面全部打印,所以有了以下方案来解决局 ...

  10. Vue基础笔记3

    插槽指令 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <titl ...