nginx安装笔记
双节点安装
1 节点一
1.1 目录
/usr/local
cd /usr/local
1.2 openssl
rpm -ql openssl
/usr/share/doc/openssl-1.0.0
# ./configure --prefix=/usr/local/nginx --with-pcre=/usr/share/doc/pcre-7.8/ --with-zlib=/usr/share/doc/zlib-1.2.3 --with-openssl=/usr/share/doc/openssl-1.0.0
1.3 pcre库
# rpm -qa | grep pcre
pcre-7.8-6.el6.x86_64
[root@r7 software]# rpm -qa | grep pcre
pcre-7.8-6.el6.x86_64
[root@r7 software]#
[root@r7 software]# rpm -e pcre-7.8-6.el6.x86_64
error: Failed dependencies:
libpcre.so.0()(64bit) is needed by (installed) grep-2.6.3-3.el6.x86_64
libpcre.so.0()(64bit) is needed by (installed) less-436-10.el6.x86_64
libpcre.so.0()(64bit) is needed by (installed) httpd-tools-2.2.15-26.el6.x86_64
libpcre.so.0()(64bit) is needed by (installed) sssd-1.9.2-82.el6.x86_64
libpcre.so.0()(64bit) is needed by (installed) httpd-2.2.15-26.el6.x86_64
libpcre.so.0()(64bit) is needed by (installed) postfix-2:2.6.6-2.2.el6_1.x86_64
libpcre.so.0()(64bit) is needed by (installed) gnote-0.6.3-3.el6.x86_64
libpcrecpp.so.0()(64bit) is needed by (installed) gnote-0.6.3-3.el6.x86_64
pcre is needed by (installed) postfix-2:2.6.6-2.2.el6_1.x86_64
[root@r7 software]#
[root@r7 software]#
[root@r7 software]# rpm -e --nodeps pcre-7.8-6.el6.x86_64
[root@r7 software]# mkdir /usr/local/pcre
[root@r7 software]# rpm -ivh --prefix=/usr/local/pcre/ pcre-7.8-6.el6.x86_64.rpm
无法安装,重新只用rpm –ivh安装后使用rpm –ql 查看安装路径
[root@r7 software]# rpm -ql pcre
/lib64/libpcre.so.0
/lib64/libpcre.so.0.0.1
/usr/bin/pcregrep
/usr/bin/pcretest
/usr/lib64/libpcrecpp.so.0
/usr/lib64/libpcrecpp.so.0.0.0
/usr/lib64/libpcreposix.so.0
/usr/lib64/libpcreposix.so.0.0.0
/usr/share/doc/pcre-7.8
pcre要使用源码包,不然在安装nginx时会编译pcre,这时会报错。
1.4 zlib库
rpm -qa | grep zlib
zlib-devel-1.2.3-29.el6.x86_64
zlib-1.2.3-29.el6.x86_64
zlib也要使用源码包
1.5 nginx安装
cd /usr/local/
tar -xzvf nginx-1.2.8.tar.gz
cd nginx-1.2.8
./configure --prefix=/usr/local/nginx
需要pcre包
./configure --prefix=/usr/local/nginx --with-pcre=/usr/share/doc/pcre-7.8/
需要zlib包
./configure --prefix=/usr/local/nginx --with-pcre=/usr/share/doc/pcre-7.8/ --with-zlib=/usr/share/doc/zlib-1.2.3
需要OpenSSL
# ./configure --prefix=/usr/local/nginx --with-pcre=/usr/share/doc/pcre-7.8/ --with-zlib=/usr/share/doc/zlib-1.2.3 --with-openssl=/usr/share/doc/openssl-1.0.0
Configuration summary
+ using PCRE library: /usr/share/doc/pcre-7.8/
+ using OpenSSL library: /usr/share/doc/openssl-1.0.0
+ md5: using system crypto library
+ sha1: using system crypto library
+ using zlib library: /usr/share/doc/zlib-1.2.3
nginx path prefix: "/usr/local/nginx"
nginx binary file: "/usr/local/nginx/sbin/nginx"
nginx configuration prefix: "/usr/local/nginx/conf"
nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
nginx pid file: "/usr/local/nginx/logs/nginx.pid"
nginx error log file: "/usr/local/nginx/logs/error.log"
nginx http access log file: "/usr/local/nginx/logs/access.log"
nginx http client request body temporary files: "client_body_temp"
nginx http proxy temporary files: "proxy_temp"
nginx http fastcgi temporary files: "fastcgi_temp"
nginx http uwsgi temporary files: "uwsgi_temp"
nginx http scgi temporary files: "scgi_temp"
[root@r7 nginx-1.2.8]# make
make -f objs/Makefile
make[1]: Entering directory `/usr/local/nginx-1.2.8'
cd /usr/share/doc/pcre-7.8/ \
&& if [ -f Makefile ]; then make distclean; fi \
&& CC="gcc" CFLAGS="-O2 -fomit-frame-pointer -pipe " \
./configure --disable-shared
/bin/sh: line 2: ./configure: No such file or directory
make[1]: *** [/usr/share/doc/pcre-7.8//Makefile] Error 127
make[1]: Leaving directory `/usr/local/nginx-1.2.8'
make: *** [build] Error 2
make 时,在编译pcre时报错。换作pcre的源码包重新编译ngnix
cd /usr/local/nginx-1.2.8
# ./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/pcre-8.02 --with-zlib=/usr/share/doc/zlib-1.2.3 --with-openssl=/usr/share/doc/openssl-1.0.0
Configuration summary
+ using PCRE library: /usr/local/pcre-8.02
+ using OpenSSL library: /usr/share/doc/openssl-1.0.0
+ md5: using system crypto library
+ sha1: using system crypto library
+ using zlib library: /usr/share/doc/zlib-1.2.3
nginx path prefix: "/usr/local/nginx"
nginx binary file: "/usr/local/nginx/sbin/nginx"
nginx configuration prefix: "/usr/local/nginx/conf"
nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
nginx pid file: "/usr/local/nginx/logs/nginx.pid"
nginx error log file: "/usr/local/nginx/logs/error.log"
nginx http access log file: "/usr/local/nginx/logs/access.log"
nginx http client request body temporary files: "client_body_temp"
nginx http proxy temporary files: "proxy_temp"
nginx http fastcgi temporary files: "fastcgi_temp"
nginx http uwsgi temporary files: "uwsgi_temp"
nginx http scgi temporary files: "scgi_temp"
make
zlib也要使用源码包
# ./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/pcre-8.02 --with-zlib=/usr/local/zlib-1.2.8 --with-openssl=/usr/share/doc/openssl-1.0.0
Configuration summary
+ using PCRE library: /usr/local/pcre-8.02
+ using OpenSSL library: /usr/share/doc/openssl-1.0.0
+ md5: using system crypto library
+ sha1: using system crypto library
+ using zlib library: /usr/local/zlib-1.2.8
nginx path prefix: "/usr/local/nginx"
nginx binary file: "/usr/local/nginx/sbin/nginx"
nginx configuration prefix: "/usr/local/nginx/conf"
nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
nginx pid file: "/usr/local/nginx/logs/nginx.pid"
nginx error log file: "/usr/local/nginx/logs/error.log"
nginx http access log file: "/usr/local/nginx/logs/access.log"
nginx http client request body temporary files: "client_body_temp"
nginx http proxy temporary files: "proxy_temp"
nginx http fastcgi temporary files: "fastcgi_temp"
nginx http uwsgi temporary files: "uwsgi_temp"
nginx http scgi temporary files: "scgi_temp"
make install
2 节点二
nginx依赖openssl、pcre、zlib的源码包。
2.1 安装包
nginx-1.2.8.tar.gz
openssl-1.0.1c.tar.gz
pcre-8.02.tar.gz
zlib-1.2.8.tar.gz
解压安装包至 /usr/local 目录
openssl如果使用rpm安装的话,需要两个都安装
# rpm -qa | grep openssl
openssl-1.0.0-27.el6.x86_64
openssl-devel-1.0.0-27.el6.x86_64
openssl-devel 安装需要的依赖包比较多,配置 yum 可简化安装
本次安装使用
2.2 安装nginx
[root@r8 local]# ls
bin etc games include lib lib64 libexec nginx-1.2.8 openssl-1.0.1c pcre-8.02 sbin share src zlib-1.2.8
[root@r8 local]#
[root@r8 local]# cd nginx-1.2.8/
[root@r8 nginx-1.2.8]# pwd
/usr/local/nginx-1.2.8
[root@r8 local]#
[root@r8 local]# mkdir nginx
[root@r8 local]# cd nginx-1.2.8/
[root@r8 nginx-1.2.8]# ./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/pcre-8.02 --with-zlib=/usr/local/zlib-1.2.8 --with-openssl=/usr/share/doc/openssl-1.0.0
有一些东西没有找到,比如下面的资源,但不影响安装
checking for sys/filio.h ... not found
make
make install
需要说明的是,pcre与zlib的安装,下载相关源码并解压到/usr/local,在configre时使用—with-pcre和—with-zlib指向其解压目录即可。而openssl服务器上已经有了openssl-1.0.0-27.el6.x86_64,我以yum方式安装了openssl-devel-1.0.0-27.el6.x86_64,也可以卸载openssl进行源码安装,然后使用—with-openssl指向其安装目录即可。
3 常用操作
3.1 启动
[root@r8 sbin]# netstat -ntpl | grep 80
tcp 0 0 0.0.0.0:31713 0.0.0.0:* LISTEN 2803/gpnpd.bin
[root@r8 sbin]# pwd
/usr/local/nginx/sbin
[root@r8 sbin]# ./nginx
[root@r8 sbin]# netstat -ntpl | grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 27496/nginx
tcp 0 0 0.0.0.0:31713 0.0.0.0:* LISTEN 2803/gpnpd.bin
3.2 配置conf
[root@r8 nginx]# cd conf/
[root@r8 conf]# pwd
/usr/local/nginx/conf
[root@r8 conf]# ls
fastcgi.conf fastcgi_params.default mime.types nginx.conf.default uwsgi_params
fastcgi.conf.default koi-utf mime.types.default scgi_params uwsgi_params.default
fastcgi_params koi-win nginx.conf scgi_params.default win-utf
[root@r8 conf]# vi nginx.conf
#user nobody;
worker_processes 1;
3.3 重启
# 语法检查
[root@r8 sbin]# ./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@r8 sbin]# ./nginx -s reload
4 常用配置
5 遇到问题
5.1 PID错误
[root@r8 sbin]# ./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@r8 sbin]#
[root@r8 sbin]#
[root@r8 sbin]#
[root@r8 sbin]# ./nginx -s reload
nginx: [error] invalid PID number "" in "/usr/local/nginx/logs/nginx.pid"
查看nginx.conf配置文件
[root@r8 conf]# vi nginx.conf
#user nobody;
worker_processes 1;
error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
pid logs/nginx.pid;
events {
worker_connections 1024;
}
解决方法:使用nginx –c重新配置nginx.conf文件
[root@r8 sbin]# ./nginx -c /usr/local/nginx/conf/nginx.conf
[root@r8 sbin]# ./nginx -s reload
[root@r8 sbin]#
nginx安装笔记的更多相关文章
- [Openwrt 项目开发笔记]:PHP+Nginx安装(七)
[Openwrt项目开发笔记]系列文章传送门:http://www.cnblogs.com/double-win/p/3888399.html 正文: 在上一节中,我们已经搭建了MySQL数据库了,因 ...
- Nginx 学习笔记之安装篇
在windows下安装Nginx其实非常简单,只需如下几个步骤: 1. 在Nginx官网下载相应版本的安装程序,上面有最新版.稳定版等各种版本,正式运营的项目建议下载最新的稳定版 2.将下载后的压缩包 ...
- CentOS 7学习笔记(二)之Nginx安装
说明: 1.这篇学习记录的目的是如何在CentOS 7上面安装Nginx,包括两种安装方式,yum源安装和源代码编译安装: 2.CentOS 7初学者,某些观点带有猜测之意,文中不足之处,还请批评指正 ...
- Nginx 安装学习笔记(1.安装和启动)
centos7 编译安装和启动.停止https://www.cnblogs.com/xingyunblog/p/9072553.html 一.安装nginx 1.下载 wget http://ngin ...
- Nginx学习笔记(一)---Linux下安装Nginx
1.Nginx介绍 (来自百度,相当之抽象,主要看后面看实例) 2.准备工作 2.1 Nginx安装 官方网站:http://nginx.org/ 2.2.Linux安装 安装工程可参考博客https ...
- nginx 学习笔记(1) nginx安装
1.nginx安装 根据操作系统的不同,nginx的安装方式也不相同. 1.1 对linux系统来说,nginx.org提供了nginx安装包.http://nginx.org/en/linux_pa ...
- nginx安装配置_runoob_阅读笔记_20190917
Nginx 安装配置_runoob菜鸟教程 Nginx 安装配置 Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向 ...
- Linux下查看Nginx安装目录、版本号信息?
Linux环境下,怎么确定Nginx是以那个config文件启动的? 输入命令行: ps -ef | grep nginx 摁回车,将出现如下图片: master process 后面的就是 ngi ...
- LNMP环境搭建:Nginx安装、测试与域名配置
Nginx作为一款优秀的Web Server软件同时也是一款优秀的负载均衡或前端反向代理.缓存服务软件 2.编译安装Nginx (1)安装Nginx依赖函数库pcre pcre为“perl兼容正则表达 ...
随机推荐
- js判断radio,checkbox是否选中
从数据库循环数据,多选按钮数组 function type_1(){ //多选 var b= document.getElementsByName('service_zj_ids[]'); var ...
- office 2013 产品秘钥
9RN4T-JPBQV-XQMC9-PM9FP-PGWP9 TKX7J-VDN26-Y2WKQ-7MG8R-X2CC9 N9M8X-QDKGK-W27Q6-2GQYT-TJC9K 4VNXV-F7PB ...
- Linux下c++中的atoi、atol、atoll、atof函数调用实例
本文中调用的四个函数如下: atoi函数:将字符串转化为int类型变量 atol函数:将字符串转化为long类型变量 atoll函数:将字符串转化为long long类型变量 atof函数:将字符串转 ...
- 通过PowerShell查询本机IP地址
脚本内容如下: Write-Host "本机IP地址为:"(ipconfig|findstr "IPv4")[1].split(":")[1 ...
- Spark系列之二——一个高效的分布式计算系统
1.什么是Spark? Spark是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于map reduce算法实现的分布式计算,拥有H ...
- fragment (1)简单示例:定义,界面配置,fragment之间的跳转
fragment作用 同一程序中切换界面 比activity轻快,灵活. fragment代码示例 ide : android studio 1.2 sdk : 22 package com.exa ...
- C语言培训第一天
下面是一些命令,先来谈谈今天的若干收获吧! 计算机中的一切文件都是以二进制补码的形式存在,问题也就来了. 第一个问题 如果我们给一个无符号的数赋值一个负数,他会读取到什么,又会输出什么?(似乎问题和上 ...
- 一个Public的字段引起的,谈谈继承中的new
一直觉得对c#面向对象这块已经掌握的很好了,因为正常情况下字段一般我们设计成私有的,今天突然想到一个实验,如下有两个很简单的类: public class Farther { ; public vir ...
- QT笔记之模态对话框及非模态对话框
模态对话框(Modal Dialog)与非模态对话框(Modeless Dialog)的概念不是Qt所独有的,在各种不同的平台下都存在.又有叫法是称为模式对话框,无模式对话框等.所谓模态对话框就是在其 ...
- 【leetcode❤python】13. Roman to Integer
#-*- coding: UTF-8 -*-#从前向后遍历罗马数字,#如果某个数比前一个数小,则加上该数.反之,减去前一个数的两倍然后加上该数###-----技术规则-----#----------- ...