作者:喵喵妈70929 | 来源:互联网 | 2023-01-30 14:51
一、Nginx简介
人称“engine x“,它是一款开放源代码的高性能HTTP服务器和反向代理服务器,同时支持IMAP/POP3代理服务,这是一款***的软件。俄罗斯设计师Igor Ysyoev在2002年开始开发该软件,于2004年发布了第一个公开版本。Nginx以高性能、高可用、丰富的功能模块、简单明了的配置文档以及低资源占用而著称。Nginx采用新的网络I/O模型,支持高达50000个并发连接(apache 只有30000)。
二、安装Nginx
作者在这里采用源码编译安装nginx,软件包可以在官方网站:http://nginx.org/下载,在编译安装之前,我们需要使用YUM提前将所需的软件依赖包安装完成。
以下是安装命令
[[email protected] ~]#wget http://nginx.org/download/nginx-1.8.1.tar.gz
[[email protected] ~]#tar -zxvf nginx-1.8.1.tar.gz
[[email protected] ~]#yum -y install gcc pcre-devel pcre gcc-c++ openssl openssl-devel \
>gd gd-devel perl perl-ExtUtils-Embed
[[email protected] ~]#cd nginx-1.8.1/
[[email protected] ~]#./configure --prefix=/usr/local/nginx \ //指定安装路径
>--with-ipv6 \
>--with-http_ssl_module \
>--with-http_realip_module \
>--with-http_addition_module \
>--with-http_dav_module \
>--with-http_flv_module \
>--with-http_mp4_module \
>--with-http_gzip_static_module \
>--with-http_perl_module \
>--with-mail \
>--with-mail_ssl_module
[[email protected] ~]#make && make install
Nginx和Apache一样采用的是模块化设计。Nginx模块分为内置模块和第三方模块,其中,内置模块中包括主模块与事件模块。图1给出的是默认自动编译的模块,可以使用--without参数禁用,图2给出的是内置模块附加模块,需要编译时通过--with参数手动开启。编译Nginx时还可以通过--add-module=/path/module1的方式编译第三方模块。
Nginx web服务器软件安装完成之后,程序主目录位于/usr/local/nginx,该目录下的内容分别为conf(主配置文件目录)、html(网站根目录)、logs(日志文件目录)、sbin(主程序目录)。Nginx默认没有提供启动脚本,需要手动输入命令来管理进程,如过需要更加方便地操作服务器进程,建议将常用的进程管理任务写成脚本。下面是Nginx常用的进程管理指令。
[[email protected] ~]#/usr/local/nginx/sbin/nginx #启动主程序
[[email protected] ~]#ln -s /usr/local/nginx/sbin/nginx /sbin/nginx #可以为该主程序做一个软链接,这样启动指令直接为nginx,比较简介
[[email protected] ~]#nginx -c /usr/local/nginx/conf/nginx.conf #指定配置文件启动主程序
[[email protected] ~]#nginx -s stop #关闭主程序
[[email protected] ~]#nginx -s reload #重新加载设置
Nginx会将进程号保存在/usr/local/nginx/logs/nginx.pid文件中,我们可以使用kill指令发送信号给该进程号,常用信号参见图3.具体案例如下。
[[email protected] ~]#kill -QUIT `cat /usr/local/nginx/logs/nginx.pid`
[[email protected] ~]#kill -HUP `cat /usr/local/nginx/logs/nginx.pid`
图3
文中如果有错误,欢迎给位技术大神指出,小弟感激不尽。
现在已经深夜01:36了,我得睡觉了,下次继续更新。。。。