码迷,mamicode.com
首页 > 其他好文 > 详细

nginx 安装配置指南

时间:2015-10-12 19:30:41      阅读:350      评论:0      收藏:0      [点我收藏+]

标签:nginx

技术分享

yum install gccgcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre-devel make–y

建立nginx的系统用户与组(-r :建立指定系统中的用户、组)

groupadd -r nginx

useradd -s /sbin/nologin -g nginx -r nginx

验证

id nginx

配置nginx的模块

./configure --prefix=/usr \

--sbin-path=/usr/sbin/nginx \

--conf-path=/etc/nginx/nginx.conf \

--error-log-path=/var/log/nginx/error.log \

--pid-path=/var/run/nginx/nginx.pid \

--lock-path=/var/lock/nginx.lock \

--user=nginx --group=nginx \

 --with-http_ssl_module \

--with-http_flv_module \

--with-http_gzip_static_module \

--http-log-path=/var/log/nginx/access.log \

--http-client-body-temp-path=/var/tmp/nginx/client \

--http-proxy-temp-path=/var/tmp/nginx/proxy \

--http-fastcgi-temp-path=/var/tmp/nginx/fcgi \

--with-http_stub_status_module

make && make install

启动nginx

/usr/sbin/nginx -c /etc/nginx/nginx.conf

查看服务是否启动

ps -ef | grep nginx

netstat -antulp | grep nginx

启动的时候会报错,是因为刚才自己手动指定了临时目录,所以这时你要自己手动创建一个这个目录即可。

mkdir /var/tmp/nginx/client -pv

nginx -c /etc/nginx/nginx.conf

停止nginx

从容关闭QUIT

kill -QUIT $(cat /var/run/nginx/nginx.pid)

快速停止

kill -TERM $(cat /var/run/nginx/nginx.pid)

强制结束所有的nginx进程

kill -9 nginx

平滑重启nginx

kill -HUP $(cat /var/run/nginx/nginx.pid)

/usr/sbin/nginx -t -c /etc/nginx/nginx.conf

可以把rpm包中的nginx脚本文件复制过来自己修改后再用

 rpm2cpio nginx-1.9.0.rpm | cpio -div  解压rpm包

cp nginx /etc/init.d/

chmod a+x /etc/init.d/nginx

chkconfig --add nginx

chkconfig --list nginx

修改/etc/init.d/nginx脚本文件,否则服务无法用这个脚本启动,因为在安装的过程中,这些都是自己指定的文件和路径。(已修改)

prog=nginx

nginx=${nginx-/usr/sbin/nginx}

conffile=${CONFFILE-/etc/nginx/nginx.conf}

lockfile=${LOCKFILE-/var/lock/nginx.lock}

pidfile=${PIDFILE-/var/run/nginx/nginx.pid}

SLEEPMSEC=100000

RETVAL=0

编译nginx.conf 详解

worker_processes 2  这里建议有几个cpu就分给它几个进程即可。

worker_connections 1024;设置可以最大的连接请求数(默认1024),超过过就在队列里等待

sendfile  on ;  内存分为两段,一段椒user,另一段是kernel,而用户去访问请求时,就会去访问内核,而这个是把访问的这个过程记录下来,放入内存中,而不用每次去内核中读取了。频繁访问东西都会放在内存当中。(是否开启带有缓存的这种机制)

gzip on ;  是否启动压缩功能,在大并发的时候会有所体现。

Location类似于apachedirectory,而root旁没写绝对路径那么它的根就是你安装时指定的那个路径。

技术分享

技术分享技术分享

而这里的/(根)是从/usr/html这里开始的,下面有定义。(从安装路径的html开始)

技术分享

虚拟主机的配置过程。

我在一个主机里用一个Ip对应多个域名来配置,写在/etc/hosts

技术分享

1、虚拟主机配置过程,/etc/nginx/nginx.conf

技术分享

技术分享

最后:killall -1 nginx (与service nginx reload结果一样)

建立目录与在目录中写入内容,命令为index.html

mkdir –p/var/www/virtual2

mkdir –p /var/www/virtual

验证:

技术分享

下面配置文件中会用到大量的正则表达式。

技术分享

技术分享

技术分享

把这个打开

技术分享

以这个为例,再继续修改配置一下。(warn是日志错误级别)

技术分享重启服务,然后日志查看

tailf  /var/log/nginx/www.example.com-error.log

技术分享

403错误:索引文件未找到

技术分享然后自己定义错误页面

编辑/etc/nginx/nginx.conf

技术分享接着建立目录,和编辑错误页面的内容

mkdir /var/www/error

cd /var/www/error

echo This is error > 40x.html

接着重启服务并验证结果:

技术分享

技术分享

首先:还是继续修改我们的这个配置文件,把我们原有的再进行一下改造即可。

技术分享

服务重启并验证结果

技术分享

之前我复制过来的这个文件

技术分享别名功能:

1、编辑/etc/nginx/nginx.conf 配置文件。

技术分享

2、建立目录及索引文件

技术分享

3、重新启动服务

技术分享

4、验证结果:

技术分享

技术分享

没有明确拒绝都是允许所有

技术分享

技术分享

编译安装的时候必须指定这个模块,否则是没有这个功能的。

--with-http_stub_status_module

1、编辑 /etc/nginx/nginx.conf

技术分享

2、重新启动服务

技术分享

3、验证结果:

技术分享

这个nginx_status目录之前是不用建立的,按以上操作完成即可。还可以对这个目录进行加密,不让其他人看到这个结果,这个是可以传给类似ngioscacti来作监控用的一个功能。

技术分享技术分享技术分享


技术分享

技术分享

技术分享


技术分享技术分享

技术分享






nginx 安装配置指南

标签:nginx

原文地址:http://silencezone.blog.51cto.com/3613477/1702114

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!