首页 > 网站 > Nginx > 正文

CentOS下编译安装nginx及配置缩略图插件的方法教程

2024-08-30 12:28:31
字体:
来源:转载
供稿:网友

相信大家都知道利用yum安装nginx 非常方便,但是有些插件并不会默认安装,比如 http_image_filter_module, 因此我们需要编译安装 nginx,已达到我们的目的。下面来看看详细的方法吧。

安装依赖

yum install -y pcre-devel libmxl2-devel libxslt-devel gd-devel

安装 nginx

wget http://nginx.org/download/nginx-1.9.1.tar.gztar -xzvf nginx-1.9.1.tar.gzcd nginx-1.9.1./configure/ --user=nginx/ --group=nginx/ --with-http_ssl_module/ --with-http_spdy_module/ --with-http_realip_module/ --with-http_addition_module/ --with-http_xslt_module/ --with-http_image_filter_module/ --with-http_sub_module/ --with-http_auth_request_module/ --with-http_stub_status_module/ --with-http_gzip_static_module make make install

安装完成后,可以使用如下命令来查看 nginx 安装的模块

[root@linux001 ~]# /usr/local/nginx/sbin/nginx -Vnginx version: nginx/1.9.1built by gcc 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) built with OpenSSL 1.0.1e-fips 11 Feb 2013TLS SNI support enabledconfigure arguments: --user=nginx --group=nginx --with-http_ssl_module --with-http_spdy_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module --with-http_image_filter_module --with-http_sub_module --with-http_auth_request_module --with-http_stub_status_module --with-http_gzip_static_module --with-http_image_filter_module

增加启动脚本

新建文件 /etc/init.d/nginx , 内容如下:

#!/bin/sh## nginx - this script starts and stops the nginx daemon## chkconfig: - 85 15 # description: Nginx is an HTTP(S) server, HTTP(S) reverse /#    proxy and IMAP/POP3 proxy server# processname: nginx# config:  /etc/nginx/nginx.conf# config: /usr/local/nginx/conf/nginx.conf# pidfile: /usr/local/nginx/logs/nginx.pid # Source function library.. /etc/rc.d/init.d/functions # Source networking configuration.. /etc/sysconfig/network # Check that networking is up.[ "$NETWORKING" = "no" ] && exit 0 nginx="/usr/local/nginx/sbin/nginx"prog=$(basename $nginx) NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf" [ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx lockfile=/var/lock/subsys/nginx make_dirs() { # make required directories user=`$nginx -V 2>&1 | grep "configure arguments:" | sed 's/[^*]*--user=/([^ ]*/).*//1/g' -` if [ -z "`grep $user /etc/passwd`" ]; then  useradd -M -s /bin/nologin $user fi options=`$nginx -V 2>&1 | grep 'configure arguments:'` for opt in $options; do  if [ `echo $opt | grep '.*-temp-path'` ]; then   value=`echo $opt | cut -d "=" -f 2`   if [ ! -d "$value" ]; then    # echo "creating" $value    mkdir -p $value && chown -R $user $value   fi  fi done} start() { [ -x $nginx ] || exit 5 [ -f $NGINX_CONF_FILE ] || exit 6 make_dirs echo -n $"Starting $prog: " daemon $nginx -c $NGINX_CONF_FILE retval=$? echo [ $retval -eq 0 ] && touch $lockfile return $retval} stop() { echo -n $"Stopping $prog: " killproc $prog -QUIT retval=$? echo [ $retval -eq 0 ] && rm -f $lockfile return $retval} restart() { #configtest || return $? stop sleep 1 start} reload() { #configtest || return $? echo -n $"Reloading $prog: " killproc $nginx -HUP RETVAL=$? echo} force_reload() { restart} configtest() { $nginx -t -c $NGINX_CONF_FILE} rh_status() { status $prog} rh_status_q() { rh_status >/dev/null 2>&1} case "$1" in start)  rh_status_q && exit 0  $1  ;; stop)  rh_status_q || exit 0  $1  ;; restart|configtest)  $1  ;; reload)  rh_status_q || exit 7  $1  ;; force-reload)  force_reload  ;; status)  rh_status  ;; condrestart|try-restart)  rh_status_q || exit 0   ;; *)  echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"  exit 2esac

添加好 /etc/init.d/nginx 后,需要增加执行权限,然后就可以用脚本来 启动、停止 nginx 了。

chmod a+x /etc/init.d/nginx /etc/init.d/nginx start/etc/init.d/nginx stop/etc/init.d/nginx restart/etc/init.d/nginx reload

或者以服务来 启动、停止 nginx。

service nginx startservice nginx stopservice nginx restartservice nginx reload

设置自启动

chkconfig --add nginxchkconfig --level 345 on

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对VEVB武林网的支持。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表