Nginx(一)安装及启停
目录
1 nginx安装
2 nginx启停
我发现很多博客排版杂乱,表达不清,读者看了往往云里雾里。我此前的博客也是如此,我自己很不满意。今起,每一篇博客都会用心写,此前的博客我也会尽力修改。至少要做到排版整洁,让自己满意,让别人能看懂。
1 nginx安装
1.1 安装的环境及版本
环境:centos7(安装教程也适用于centos6) 版本:nginx/1.12.0 安装的方式:编译安装(配置yum源安装也可以,但本次忽略)
1.2 安装
(1)安装Nginx所需要的pcre库
nginx重写功能会用到这个包。
- # yum install pcre pcre-devel –y
(2)安装openssl-devel模块
Nginx在使用https服务时要使用这个模块,不安装openssl相关的包,安装Nginx过程会报错。
- # yum install openssl openssl-devel
(3) 安装Nginx
1)创建nginx下载后的存放目录
- # mkdir –p /data/liuyouyuan
- # cd /data/liuyouyuan/
2)下载并解压
- # wget http://nginx.org/download/nginx-1.12.0.tar.gz
- # tar zxvf nginx-1.12.0.tar.gz
- # cd nginx-1.12.0/
3)生成Makefile,编译并安装
补充:./configure 可选项。
- --help print this message
- --prefix=PATH set installation prefix 默认安装路径
- --sbin-path=PATH set nginx binary pathname nginx主程序安装路径
- --modules-path=PATH set modules path
- --conf-path=PATH set nginx.conf pathname 主配置文件安装路径
- --error-log-path=PATH set error log pathname
- --pid-path=PATH set nginx.pid pathname
- --lock-path=PATH set nginx.lock pathname
- --user=USER set non-privileged user for worker processes 启动后用那个普通用户运行worker进程
- --group=GROUP set non-privileged group for worker processes
- --build=NAME set build name
- --builddir=DIR set build directory
- --with-select_module enable select module
- --without-select_module disable select module
- --with-poll_module enable poll module
- --without-poll_module disable poll module
- --with-threads enable thread pool support
- --with-file-aio enable file AIO support
- --with-http_ssl_module enable ngx_http_ssl_module 启用https支持模块
- --with-http_v2_module enable ngx_http_v2_module
- --with-http_realip_module enable ngx_http_realip_module
- --with-http_addition_module enable ngx_http_addition_module
- --with-http_xslt_module enable ngx_http_xslt_module
- --with-http_xslt_module=dynamic enable dynamic ngx_http_xslt_module
- --with-http_image_filter_module enable ngx_http_image_filter_module
- --with-http_image_filter_module=dynamic
- enable dynamic ngx_http_image_filter_module
- --with-http_geoip_module enable ngx_http_geoip_module
- --with-http_geoip_module=dynamic enable dynamic ngx_http_geoip_module
- --with-http_sub_module enable ngx_http_sub_module
- --with-http_dav_module enable ngx_http_dav_module
- --with-http_flv_module enable ngx_http_flv_module 支持流媒体
- --with-http_mp4_module enable ngx_http_mp4_module
- --with-http_gunzip_module enable ngx_http_gunzip_module
- --with-http_gzip_static_module enable ngx_http_gzip_static_module 静态文件压缩
- --with-http_auth_request_module enable ngx_http_auth_request_module
- --with-http_random_index_module enable ngx_http_random_index_module
- --with-http_secure_link_module enable ngx_http_secure_link_module
- --with-http_degradation_module enable ngx_http_degradation_module
- --with-http_slice_module enable ngx_http_slice_module
- --with-http_stub_status_module enable ngx_http_stub_status_module http状态页面?
- --without-http_charset_module disable ngx_http_charset_module
- --without-http_gzip_module disable ngx_http_gzip_module
- --without-http_ssi_module disable ngx_http_ssi_module
- --without-http_userid_module disable ngx_http_userid_module
- --without-http_access_module disable ngx_http_access_module
- --without-http_auth_basic_module disable ngx_http_auth_basic_module
- --without-http_autoindex_module disable ngx_http_autoindex_module
- --without-http_geo_module disable ngx_http_geo_module
- --without-http_map_module disable ngx_http_map_module
- --without-http_split_clients_module disable ngx_http_split_clients_module
- --without-http_referer_module disable ngx_http_referer_module
- --without-http_rewrite_module disable ngx_http_rewrite_module
- --without-http_proxy_module disable ngx_http_proxy_module
- --without-http_fastcgi_module disable ngx_http_fastcgi_module
- --without-http_uwsgi_module disable ngx_http_uwsgi_module
- --without-http_scgi_module disable ngx_http_scgi_module
- --without-http_memcached_module disable ngx_http_memcached_module
- --without-http_limit_conn_module disable ngx_http_limit_conn_module
- --without-http_limit_req_module disable ngx_http_limit_req_module
- --without-http_empty_gif_module disable ngx_http_empty_gif_module
- --without-http_browser_module disable ngx_http_browser_module
- --without-http_upstream_hash_module
- disable ngx_http_upstream_hash_module
- --without-http_upstream_ip_hash_module
- disable ngx_http_upstream_ip_hash_module
- --without-http_upstream_least_conn_module
- disable ngx_http_upstream_least_conn_module
- --without-http_upstream_keepalive_module
- disable ngx_http_upstream_keepalive_module
- --without-http_upstream_zone_module
- disable ngx_http_upstream_zone_module
- --with-http_perl_module enable ngx_http_perl_module
- --with-http_perl_module=dynamic enable dynamic ngx_http_perl_module
- --with-perl_modules_path=PATH set Perl modules path
- --with-perl=PATH set perl binary pathname
- --http-log-path=PATH set http access log pathname
- --http-client-body-temp-path=PATH set path to store http client request body temporary files 客户端传文件的临时存放路径
- --http-proxy-temp-path=PATH set path to store http proxy temporary files 从代理服务器取来的数据临时存放路径
- --http-fastcgi-temp-path=PATH set path to store
- http fastcgi temporary files
- --http-uwsgi-temp-path=PATH set path to store
- http uwsgi temporary files
- --http-scgi-temp-path=PATH set path to store
- http scgi temporary files
- --without-http disable HTTP server
- --without-http-cache disable HTTP cache
- --with-mail enable POP3/IMAP4/SMTP proxy module
- --with-mail=dynamic enable dynamic POP3/IMAP4/SMTP proxy module
- --with-mail_ssl_module enable ngx_mail_ssl_module
- --without-mail_pop3_module disable ngx_mail_pop3_module
- --without-mail_imap_module disable ngx_mail_imap_module
- --without-mail_smtp_module disable ngx_mail_smtp_module
- --with-stream enable TCP/UDP proxy module
- --with-stream=dynamic enable dynamic TCP/UDP proxy module
- --with-stream_ssl_module enable ngx_stream_ssl_module
- --with-stream_realip_module enable ngx_stream_realip_module
- --with-stream_geoip_module enable ngx_stream_geoip_module
- --with-stream_geoip_module=dynamic enable dynamic ngx_stream_geoip_module
- --with-stream_ssl_preread_module enable ngx_stream_ssl_preread_module
- --without-stream_limit_conn_module disable ngx_stream_limit_conn_module
- --without-stream_access_module disable ngx_stream_access_module
- --without-stream_geo_module disable ngx_stream_geo_module
- --without-stream_map_module disable ngx_stream_map_module
- --without-stream_split_clients_module
- disable ngx_stream_split_clients_module
- --without-stream_return_module disable ngx_stream_return_module
- --without-stream_upstream_hash_module
- disable ngx_stream_upstream_hash_module
- --without-stream_upstream_least_conn_module
- disable ngx_stream_upstream_least_conn_module
- --without-stream_upstream_zone_module
- disable ngx_stream_upstream_zone_module
- --with-google_perftools_module enable ngx_google_perftools_module
- --with-cpp_test_module enable ngx_cpp_test_module
- --add-module=PATH enable external module
- --add-dynamic-module=PATH enable dynamic external module
- --with-compat dynamic modules compatibility
- --with-cc=PATH set C compiler pathname
- --with-cpp=PATH set C preprocessor pathname
- --with-cc-opt=OPTIONS set additional C compiler options
- --with-ld-opt=OPTIONS set additional linker options
- --with-cpu-opt=CPU build for the specified CPU, valid values:
- pentium, pentiumpro, pentium3, pentium4,
- athlon, opteron, sparc32, sparc64, ppc64
- --without-pcre disable PCRE library usage
- --with-pcre force PCRE library usage
- --with-pcre=DIR set path to PCRE library sources
- --with-pcre-opt=OPTIONS set additional build options for PCRE
- --with-pcre-jit build PCRE with JIT compilation support
- --with-zlib=DIR set path to zlib library sources
- --with-zlib-opt=OPTIONS set additional build options for zlib
- --with-zlib-asm=CPU use zlib assembler sources optimized
- for the specified CPU, valid values:
- pentium, pentiumpro
- --with-libatomic force libatomic_ops library usage
- --with-libatomic=DIR set path to libatomic_ops library sources
- --with-openssl=DIR set path to OpenSSL library sources
- --with-openssl-opt=OPTIONS set additional build options for OpenSSL
- --with-debug enable debug logging
. ./configure选项
编译安装命令:
- # ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
- # make
- # make install
4)创建软连接
- # ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
5)安装成功验证
- # nginx -v
如:
备注:我们在执行命令完成后都应该验证一下。
2 nginx启停
2.1 启停总结
前提:(1)nginx的根目录为/usr/local/nginx;(2)/usr/loacla/nginx/sbin/nginx软连接--->/usr/bin/nginx
- # nginx 按默认配置启动
- # nginx –c file.conf(接配置文件) 标准启动*****
- # kill -QUIT 主进程号 从容停止
- # kill -TERM 主进程号 快速停止
- # pkill -9 nginx 强制停止*****
- # killall -9 nginx 停止所有*****
- # kill -信号类型 ‘/usr/nginx/logs/nginx.pid’ 这样停止也可以
- # kill -HUP 主进程号/进程号文件路径 平滑重启
- # /usr/nginx/sbin/nginx -s reload 平滑重启**
- # nginx -t -c /usr/local/nginx/conf/nginx.conf 验证配置语法
- # /usr/local/nginx/sbin/nginx -t 验证配置语法*****
- # 不常用的平滑升级:
- # kill -USR2 旧版程序的主进程号或进程文件名
- # 此时旧的Nginx主进程将会把自己的进程文件改名为.oldbin,然后执行新版 Nginx。新旧Nginx会同市运行,共同处理请求。
- # kill -WINCH 旧版主进程号
- # 慢慢旧的工作进程就都会随着任务执行完毕而退出,新版的Nginx的工作进程会逐渐取代旧版工作进程。
- # kill -HUP 旧/新版主进程号 不重载配置启动新/旧工作进程
- # kill -QUIT 旧/新主进程号 从容关闭旧/新进程
- # kill -TERM 旧/新工作进程号 上步命令如果提示还有进程没有结束就用这个命令先关闭旧/新工作进程,再关闭主进程号
查看帮助信息:
- [root@liuyouyuan HuJinLogDownload]# /usr/local/nginx/sbin/nginx -h
- nginx version: nginx/1.12.
- Usage: nginx [-?hvVtTq] [-s signal] [-c filename] [-p prefix] [-g directives]
- Options:
- -?,-h : this help
- -v : show version and exit
- -V : show version and configure options then exit
- -t : test configuration and exit
- -T : test configuration, dump it and exit
- -q : suppress non-error messages during configuration testing
- -s signal : send signal to a master process: stop, quit, reopen, reload
- -p prefix : set prefix path (default: /usr/local/nginx/)
- -c filename : set configuration file (default: conf/nginx.conf)
- -g directives : set global directives out of configuration file
nginx的配置不是三言两语就能说明白,所以我打算另外写一到两篇博客来描述。
Nginx(一)安装及启停的更多相关文章
- nginx和php-fpm的启停和配置
一.nginx的启停 (1) 启动nginx /etc/init.d/nginx start (2) 停止nginx /etc/init.d/nginx stop (3) 重启nginx /etc/i ...
- nginx的自动化安装和启停脚本
个人原创,转载请注明出处和作者,否则依法追究法律责任 author: headsen chen date: 2018-03-07 14:39:11 nginx_install.sh #!/bin/ ...
- Redis(一) redis安装、启停
Redis是开源的内存数据存储,常被用作为内存数据库.缓存.全局队列.计数器等等. Redis安装 Redis分为多种模式:单机模式.高可用模式.集群模式.这篇中主要简介单机版的安装方式. 源码构建式 ...
- 2.3 Nginx服务的启停控制
在Linux平台下,控制Nginx服务的启停有多种方法 2.3.1 Nginx服务的信号控制 在Nginx服务的启停办法中,有一类是通过信号机制来实现的,Nginx服务器的信号控制如下: Nginx服 ...
- nginx启停脚本
安装nginx时,源码包中未带官方的启动脚本,也就无法使用service nginxd start这种启动方式,查了下资料自己写了一个: #!/bin/bash #@version: #@author ...
- nginx 启停命令
nginx 启停配置 #!/bin/sh # # nginx Startup script for nginx # # chkconfig: - 85 15 # processname: nginx ...
- redis安装、配置、启停
Redis is an open source (BSD licensed), in-memory data structure store, used as database, cache and ...
- nginx之启停操作及配置文件语法检测
nginx的启停操作 ----nginx 启动 ----nginx -s stop 停止 ----nginx -s reload 重新加载 nginx -t 修改配置文件之后进行语法检验
- 2、Redis如何配置成一个windows服务并且设置一键安装卸载与启停
每天启动redis虽然只是一个命令行的事情,但是还是比较烦,所以…… 参考文档:Windows Service Documentation.docx 默认前提:Redis已安装并配置完成(不知道如何配 ...
随机推荐
- 移动端与PC端的viewport
第一种解析: 设备像素,就是我们直觉上觉得"靠谱"的像素,这些像素为所使用的各种设备提供了正规的分辨率,并且其值可以通过(通常情况下)从screen.width/height属性中 ...
- Delphi for iOS开发指南(3):创建一个FireMonkey iOS应用程序
http://cache.baiducontent.com/c?m=9d78d513d9d431a94f9d92697d60c015134381132ba1d0020fa48449e3732b4b50 ...
- golang array, slice, string笔记
本来想写一篇关于golang io的笔记,但是在学习io之前必须了解array, slice, string概念,因此将在下篇写golang io. array: 数组的长度是该数组类型的一部分, ...
- [ACM_数据结构] POJ2352 [树状数组稍微变形]
Description Astronomers often examine star maps where stars are represented by points on a plane and ...
- python 判断是否为中文
python在执行代码过程是不知道这个字符是什么意思的.是否是中文,而是把所有代码翻译成二进制也就是000111这种形式,机器可以看懂的语言. 也就是在计算机中所有的字符都是有数字来表示的.汉字也是有 ...
- CSS盒子坍塌问题的4种解决方案
一.问题重述 嗯,这个就是坍塌的盒子了.外部盒子本应该包裹住内部的两个浮动盒子,结果却没有. 二.问题出现的原因 3个盒子都只设置了width,而没有规定height,内部两个盒子分别设置了左右浮动. ...
- CF 798B 渣渣题
题目链接:http://codeforces.com/contest/798/problem/B 此题是我打河工大校赛前一晚熬夜打CF时硬肛过去的B题,今天补题时,偶然看到dalao的代码,ORZ,s ...
- Java直接内存与非直接内存性能测试
什么是直接内存与非直接内存 根据官方文档的描述: A byte buffer is either direct or non-direct. Given a direct byte buffer, t ...
- 消息队列 MQ 入门理解
功能特性: 应用场景: 消息队列 MQ 可应用于如下几个场景: 分布式事务 在传统的事务处理中,多个系统之间的交互耦合到一个事务中,响应时间长,影响系统可用性.引入分布式事务消息,交易系统和消息队列之 ...
- JAVA并发编程学习笔记------结构化并发应用程序
1. Executor基于生产者-消费者模式,提交任务的操作相当于生产者,执行任务的线程相当于消费者,如果要在程序中实现一个生产者-消费者的设计,最简单的方式通常就是使用Executor 2. Exe ...