一:安装依赖项

1.pcre;2.openssl;3.zlib;4.gcc;可直接通过yum安装

二:创建nginx账户(可以配置nginx.conf的user为此账户)

useradd nginx -M -s /sbin/nologin

三:下载并安装

在官网http://nginx.org/en/download.html下载稳定版的linux安装包,我下的是nginx.1.12.2.tar.gz;

1.解压此压缩包;2.cd到解压后的目录;3.直接执行./configure即可,不需要额外配置(老版本需要);

然后会执行配置脚本(configure是一个shell脚本),最后执行完后会输出(个人的):

  1. Configuration summary
  2. + using system PCRE library
  3. + OpenSSL library is not used
  4. + using system zlib library
  5.  
  6. nginx path prefix: "/usr/local/nginx"
  7. nginx binary file: "/usr/local/nginx/sbin/nginx"
  8. nginx modules path: "/usr/local/nginx/modules"
  9. nginx configuration prefix: "/usr/local/nginx/conf"
  10. nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
  11. nginx pid file: "/usr/local/nginx/logs/nginx.pid"
  12. nginx error log file: "/usr/local/nginx/logs/error.log"
  13. nginx http access log file: "/usr/local/nginx/logs/access.log"
  14. nginx http client request body temporary files: "client_body_temp"
  15. nginx http proxy temporary files: "proxy_temp"
  16. nginx http fastcgi temporary files: "fastcgi_temp"
  17. nginx http uwsgi temporary files: "uwsgi_temp"
  18. nginx http scgi temporary files: "scgi_temp"

这个就是默认的配置,可以保存一下以便需要的时候可以快速查阅;

4.开始真正的安装

还是在该目录下输入make回车,最终会有一段输出:

  1. sed -e "s|%%PREFIX%%|/usr/local/nginx|" \
  2. -e "s|%%PID_PATH%%|/usr/local/nginx/logs/nginx.pid|" \
  3. -e "s|%%CONF_PATH%%|/usr/local/nginx/conf/nginx.conf|" \
  4. -e "s|%%ERROR_LOG_PATH%%|/usr/local/nginx/logs/error.log|" \
  5. < man/nginx.8 > objs/nginx.8

然后再次输入make install;(make时实际上已经编译好了,这一步主要是根据配置进行一系列的mkdir/cp等命令的执行);

5.查看安装在哪

whereis nginx后输出:nginx: /usr/local/nginx

四:启动、停止nginx

  1. cd /usr/local/nginx/sbin/
  2. ./nginx # 启动nginx服务(还可以通过 -c cnfFile 手动指定配置文件的位置,默认在安装目录的conf/nginx.conf),注意,不需要用daemon或nohup或后面加个&,这个程序本身就已经是daemon程序了;
  3. ./nginx -s quit # 将nginx作为客户端启动并向已启动的nginx服务发送shutdown请求(可通过tcp请求实现)【这几个-s都是signal的意思】
  4. ./nginx -s stop # 直接杀死nginx服务,可以通过killproc nginx -QUIT实现;
  5. ./nginx -s reload # 重新加在配置并重启相关组件,但nginx不会重启,类似tomcat的redeploy
  6. ./nginx -s quit:此方式停止步骤是待nginx进程处理任务完毕进行停止。
    ./nginx -s stop:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程(可以直接用pidof nginx得到)。
  7.  
  8. 这里说明一下:sbin下的nginx即是server也是ctl,即启动nginx时如果指定 -s 那么此进程就作为客户端(类似rabbitmqctl)来操作nginx服务,故不能手动用lockfile来限制进程的单例运行;
  9.  
  10. 查询nginx进程:ps aux|grep nginx(或者ps ef|grep nginx,或者kill -0或者pidof nginx之类的)

五:重启nginx

1.先停止再启动(推荐):
对 nginx 进行重启相当于先停止再启动,即先执行停止命令再执行启动命令。如下:

./nginx -s quit(执行完后会有两个nginx进程退出)

sleep 1

./nginx

六:开机启动

由于不像redis或mq一样退出时需要做清理工作,nginx可以直接退出,故直接在/etc/rc.d/rc.local文件里添加:/usr/local/nginx/sbin/nginx即可;(前提是你的rc.local有可执行权限,没有可以用chmod配置)

如果希望nginx退出是quit的形式则可以写个脚本放到init.d目录下,不过关机时并不能完全保证会等nginx主动退出才继续关机;

注:启动nginx后访问http://localhost/如果出现:Welcome to nginx!。。。说明nginx配置和启动成功(这个文件是nginx/html/index.html);

部分资料参考:https://www.linuxidc.com/Linux/2016-09/134907.htm

CentOS7下安装配置Nginx的更多相关文章

  1. centos7 下 安装部署nginx

    centos7 下 安装部署nginx 1.nginx安装依赖于三个包,注意安装顺序 a.SSL功能需要openssl库,直接通过yum安装: #yum install openssl b.gzip模 ...

  2. Centos7下安装配置Redsocks

    Redsocks是一个开源的网络程序,代码依赖开源的libevent网络库.Redsocks允许你将所有TCP连接重定向到SOCKS或HTTPS代理,比如Shadowsocks(Centos7下安装配 ...

  3. (转)windows 下安装配置 Nginx 详解

    windows 下安装配置 Nginx 详解 本文转自https://blog.csdn.net/kingscoming/article/details/79042874 nginx功能之一可以启动一 ...

  4. Linux 下安装配置nginx及常见问题解答

    其实也不能完全算是原创吧!都是我配置nginx时所遇到的问题,查阅资料后总结起来.即是巩固一下nginx的配置,也是分享给新入Linux的童鞋们一些知识 好了,不多废话,进入主题吧! 为nginx添加 ...

  5. Centos7 下安装配置tomcat7

    首先下载压缩包 wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0.78/bin/apache-tomcat-7. ...

  6. centos7下安装配置prometheus

    prometheus官网:https://prometheus.io/download/ 搭建环境参考:https://blog.csdn.net/baidu_36943075/article/det ...

  7. centos7下安装配置jenkins+git+maven+jdk

    环境 centos7 jdk1.8 maven3 git 在安装jenkins之前,先安装jdk1.8.maven.git 一. 安装jdk1.8 第一步:下载 jdk-8u131-linux-x64 ...

  8. windows下安装配置nginx

    下载nginx-1.0.11.zip, 解压到到nginx目录下 D:\nginx\conf 修改conf下的nginx.conf文件, 默认是80端口,若该端口被占则可以修改 listen 8073 ...

  9. centOS7下 安装nodejs+nginx+mongodb+pm2部署vue项目

    一.购买服务器并远程连接 1.购买服务器和域名 可以选择阿里云或者是其他的厂商的服务器.然后会获得服务器ip地址,用户名和密码. 购买域名,将域名绑定到ip地址上. 2.下载xshell,winscp ...

随机推荐

  1. 脚本中 %~dp0

    cmd窗口中 for /? 查询参数含义 %~dp0, 将参数转换为磁盘路径+名字 例: 脚本中一行 %~dp0abc.exe (abc.exe位置c:\test\abc.exe) 展开后则为 c:\ ...

  2. python post json applidation/json

    如果使用headers = {"Content-Type": "application/json"},在后台使用request.POST.get()无法获取数据 ...

  3. 关于U3D场景烘焙的一个想法

    U3D进行场景烘焙时,发现阴影无法选择烘焙质量,其实想一下也合理,毕竟是烘焙,是将光照与阴影信息保存到lightmap中,因此阴影的质量取决于光照贴图的精度, 就算光照贴图再大,也远不可能达到实时光照 ...

  4. Solving SharePoint Server 2010 - 503. The service is unavailable, After installation

    Installed: SharePoint Server 2010 for Internet Enterprise Beta (x64) On: Windows Server 2008 Standar ...

  5. c#数和二叉树

    树(Tree)是 n(n≥0)个相同类型的数据元素的有限集合.树中的数据元素叫结点(Node).n=0 的树称为空树(Empty Tree):对于 n>0 的任意非空树 T 有: (1)有且仅有 ...

  6. Dubbo 分布式服务框架

    要想了解Dubbo是什么,我们不防先了解它有什么用. 使用场景:比如我想开发一个网上商城项目,这个网上商城呢,比较复杂,分为pc端web管理后台,微信端销售公众号,那么我们分成四个项目,pc端网站,微 ...

  7. 用Python提取XML里的内容,存到Excel中

    最近做一个项目是解析XML文件,提取其中的chatid和lt.timestamp等信息,存到excel里. 1.解析xml,提取数据 使用python自带的xml.dom中的minidom(也可以用l ...

  8. Only POT texture can be compressed to PVRTC format

    在图片压缩格式 报这个Warning的时候,意思是该图片必须要采用2的幂次方大小才能使用该格式. POT: Power of Two. 采取方式是在advanced里边,把Non Power of 2 ...

  9. iOS 11 scroll滚动偏移,tableview偏移44,获取view的宽和高

    1. tableview 的头部 有44的偏移量 1>.设置 tableview的 属性 tableView.scrollIndicatorInsets = UIEdgeInsets.zero ...

  10. php下的原生ajax请求

    浏览器中为我们提供了一个JS对象XMLHttpRequet,它可以帮助我们发送HTTP请求,并接受服务端的响应. 意味着我们的浏览器不提交,通过JS就可以请求服务器.   ajax(Asynchron ...