欢迎访问鸿雪径,这里介绍软件相关技术、动态以及鸿雪径杂谈,如有技术合作请与站长联系!邮费网 易食烤吧 特产大全网
首页 > Linux/Unix > 在aliyun linux 5.7下配置nginx服务器(senginx)

在aliyun linux 5.7下配置nginx服务器(senginx)

发布时间:2014-09-24 作者:伊君 点击:392

    安装nginx需要提前编译好libmcrypt、curl、pcre库、zlib库,以上这几个的安装可以查看本站的相关说明文档。

    安装这几个库之前最好把yum源进行更新,更新完成之后首先安装c++等编译工具

    yum install -y gcc gcc-c++

   这里简要回顾一下这几个库的安装过程:

libmcrypt的安装:


cd /usr/local/src


wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz


tar -zxvf libmcrypt-2.5.7.tar.gz

cd libmcrypt-2.5.7

mkdir -p /usr/local/libmcrypt

./configure prefix=/usr/local/libmcrypt/

make

make install




curl 安装:


cd /usr/local/src

wget http://curl.haxx.se/download/curl-7.38.0.tar.gz

tar -zxf curl-7.38.0.tar.gz

cd curl-7.38.0

ls

./configure --prefix=/usr/local/curl/

make

make install

一般我们都需要先装pcre, zlib,前者为了重写rewrite,后者为了gzip压缩。下面就是具体的nginx安装过程了

1.选定源码目录

可以是任何目录,本文选定的是/usr/local/src


cd /usr/local/src



yum install -y gcc gcc-c++     (尹鸿涛新增)


2.安装PCRE库

ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/ 下载最新的 PCRE 源码包,使用下面命令下载编译和安装 PCRE 包:


cd /usr/local/src

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz 

tar -zxvf pcre-8.38.tar.gz 

cd pcre-8.38

./configure

make

make install 




3.安装zlib库


cd /usr/local/src  

wget http://zlib.net/zlib-1.2.8.tar.gz 

tar -zxvf zlib-1.2.8.tar.gz 

cd zlib-1.2.8 

./configure

make

make install 

4.安装ssl(某些vps默认没装ssl)


cd /usr/local/src

wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz 

tar -zxvf openssl-1.0.1c.tar.gz 

5.安装nginx


Nginx 一般有两个版本,分别是稳定版和开发版,您可以根据您的目的来选择这两个版本的其中一个,下面是把 Nginx 安装到 /usr/local/nginx 目录下的详细步骤:

cd /usr/local/src
wget http://senginx.org/download/senginx-1.6.1.tar.gz
tar -zxvf senginx-1.6.1.tar.gz
mv senginx-1.6.1 nginx-1.6.1
cd nginx-1.6.1
./se-configure.sh --prefix=/webservers/server/nginx1.6.1 --with-pcre=/usr/local/src/pcre-8.38  --with-zlib=/usr/local/src/zlib-1.2.8 --with-openssl=/usr/local/src/openssl-1.0.1c --with-http_secure_link_module --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-select_module --with-http_perl_module --with-http_gzip_static_module
make 
make install

安装过程中需要注意我们使用了se-configure.sh来执行配置。

安装过程中我们不要--add-module=/webservers/tools/ngx_cache_purge-1.3  这一段配置,因为senginx中已经增加这个了,如果添加了这句,在编译时会报错。

“objs/addon/ngx_cache_purge-1.3/ngx_cache_purge_module.o:(.data+0x0): multiple definition of `ngx_http_p。。。。”


制作nginx的启动文件:vi /etc/init.d/nginx

---------------------------------------------------------------------------------------------------

#! /bin/sh

# Startup script for the nginx Web Server

# chkconfig: - 85 15

# description: nginx is a World Wide Web server. It is used to serve

# HTML files and CGI.

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin


DESC="nginx daemon"


NAME=nginx


DAEMON=/webservers/server/nginx1.6.1/sbin/$NAME


CONFIGFILE=/webservers/server/nginx1.6.1/conf/$NAME.conf


PIDFILE=/webservers/server/nginx1.6.1/logs/$NAME.pid


SCRIPTNAME=/etc/init.d/$NAME


set -e


[ -x "$DAEMON" ] || exit 0


do_start() {


$DAEMON -c $CONFIGFILE || echo -n "nginx already running"


}


do_stop() {


kill -INT `cat $PIDFILE` || echo -n "nginx not running"


}


do_reload() {


kill -HUP `cat $PIDFILE` || echo -n "nginx can't reload"


}


case "$1" in


start)


echo -n "Starting $DESC: $NAME"


do_start


echo "."


;;


stop)


echo -n "Stopping $DESC: $NAME"


do_stop


echo "."


;;


reload|graceful)


echo -n "Reloading $DESC configuration..."


do_reload


echo "."


;;


restart)


echo -n "Restarting $DESC: $NAME"


do_stop


do_start


echo "."


;;


*)


echo "Usage: $SCRIPTNAME {start|stop|reload|restart}" >&2


exit 3


;;


esac


exit 0

---------------------------------------------------------------------------------------------------


第三步 


chmod +x /etc/init.d/nginx 

第四步 


/sbin/chkconfig nginx on 

检查一下 


sudo /sbin/chkconfig --list nginx 

nginx 0:off 1:off 2:on 3:on 4:on 5:on 6:off 

完成! 


之后,就可以使用以下命令了 

. 代码如下:


service nginx start 

service nginx stop 

service nginx restart 

service nginx reload 


/etc/init.d/nginx start 

/etc/init.d/nginx stop 

/etc/init.d/nginx restart 

/etc/init.d/nginx reload 


SEnginx(Security Enhanced NGINX)是著名的 HTTP 和 反向代理 服务器nginx的一个变种版本,主要是在原版nginx的基础上增加了多种Web安全功能,并增强了应用交付等方面的原有功能。SEnginx继承了nginx的全部原始特性,全面兼容标准nginx的配置,此外也吸收了一些源自tengine等优秀nginx变种的高级特性以及一些常用的第三方nginx模块。

SEnginx目前只维护一个主线分支,文档与主线版本同步。

SEnginx开源项目由东软集团网络安全事业部(http://security.neusoft.com)发起。


更多关于 aliyun,linux,nginx,senginx 的信息
本站部分文章转载于网上,版权归原作者所有。如果侵犯您的权益,请Email和本站联系!
鸿雪径 www.HongXueJing.com  冀ICP备07017673号-4