nginx配置指南之一(转载)

nginx配置指南之一

一、nginx简介

1.1 Tengine简介

  Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。

1.2 参考资源

http://tengine.taobao.org/documentation_cn.html

二、Tengine设置及编译

2.1 前期准备

  在使用yum指令前建议先设定好linux软件源(如下图所示,可以参考http://waringid.blog.51cto.com/65148/904201)。需要注意的是epel源中的epel-release-6-7.noarch.rpm已经换成了epel-release-6-8.noarch.rpm版本(同时注意32位和64位版本的区别)。

yum -y install gcc gcc-c++ autoconf libjpeglibjpeg-devel libpnglibpng-devel
 freetype freetype-devellibxml2 libxml2-devel zlib zlib-devel glibc 
glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncursesncurses-devel 
curl curl-devel e2fsprogse2fsprogs-devel krb5  krb5-devel 
libidnlibidn-devel openssl openssl-devel makepatch pcre-devel
cd /root
wget http://tengine.taobao.org/download/tengine-1.5.2.tar.gz
tar zxvf tengine-1.5.2.tar.gz

2.2 编译Tengine

  因为Tengine是开源项目,因此也可以用以下的方式获取它的最新源码,如下所示。

yum install git pcre pcre-devel
git clone git://github.com/alibaba/tengine.git
cd tengine
./configure --prefix=/usr/local/nginx --conf-path=/etc/nginx/nginx.conf
--pid-path=/var/run/nginx/nginx.pid --error-log-path=/var/log/nginx/nginx.log 
--http-log-path=/var/log/nginx/nginx-http.log
make
make install

2.3 设置Tengine应用环境

  编译安装后系统会安编译参数生成相应的配置文件,可以使用以下的vim配置脚本实现编辑nginx.conf配置文件的语法加亮功能。

wget http://www.vim.org/scripts/download_script.php?src_id=19394
mkdir -p ~/.vim/syntax/
cp nginx.vim ./.vim/syntax/
vi .vim/syntax/filetype.vim
au BufRead,BufNewFile /etc/nginx/*,/usr/local/nginx/conf/* if &ft ==‘‘ | setfiletype nginx | endif

  设置完成后可以通过nginx –v或 –V查看它的版本以及加载的模块,如下图所示。

2.4 添加nginx启动脚本

  正常编译方式下nginx没有启动脚本,可通过添加以下启动文件将其列为系统启动服务。

vim /etc/init.d/nginx
chmod +x /etc/init.d/nginx
chkconfig –-add nginx
chkcnfig –-level 35 nginx on 
#!/bin/sh
# nginx - this script starts and stops the nginx daemin#
# chkconfig:   - 8515
# description: Nginx is an HTTP(S) server, HTTP(S) reverse #              proxy and IMAP/POP3 proxy server
# processname: nginx
# config:     /etc/nginx/nginx.conf
# pidfile:    /var/run/nginx/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="/etc/nginx/nginx.conf"
lockfile=/var/lock/subsys/nginx
start() {
    [ -x $nginx ] ||exit 5
    [ -f$NGINX_CONF_FILE ] || exit 6
    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
    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
        ;;
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 2
esac
service nginx start

三、php支持

  nginx可以通过php-fpm增加php支持。默认情况下,CentOS的官方资源是没有php-fpm的, 但我们可以从Remi的RPM资源中获得,它依赖于EPEL资源。

3.1 安装php-fpm

yum install php-fpm
chkconfig --level 345 php-fpm on 
service php-fpm start

3.2 设置nginx

  首先增加php支持,如下图所示。

  然后在后续php项目中完成以下设置。

location ~ \.php$ {
                root            /var/www/html;
                fastcgi_pass    127.0.0.1:9000;
                fastcgi_index   index.php;
                fastcgi_param   SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include         fastcgi_params;

3.3 测试php

  在document root目录下建立下列PHP测试文件。

vim /var/www/html/info.php

打开测试文件所在的文件,成功的情况如下图所示。

原文链接

本文由豆约翰博客备份专家远程一键发布

时间: 2024-08-02 15:49:15

nginx配置指南之一(转载)的相关文章

HAProxy、Nginx 配置 HTTP/2 完整指南

HAProxy.Nginx 配置 HTTP/2 完整指南 基于最近对HTTP/2的争论和它的优势,是时候升级底层架构了.这篇文章将会介绍如何在安装和配置HAProxy和Ngnix(使用ssl终端).为了简化流程,我建议你准备好使用Docker镜像. 如果你想跳过安装环节或你只对配置环节感兴趣,可以跳至配置部分. 我为什么需要关注HTTP/2? 这里有一些介绍HTTP/2益处的文章-而且我鼓励你去读一读.下面我将重点介绍我认为比较重要的几点. HTTP/2的主要优势: 使用二进制数据(不像HTTP

Nginx学习指南之安装与配置

一.简介 Nginx [engine x]是Igor Sysoev编写的一个HTTP和反向代理服务器,另外它可以作为邮件代理服务器.Nginx已经在众多流量很大的俄罗斯网站上使用了很长时间,这些网站包括Yandex,Mail.Ru.VKontakte,以及Rambler,在国内使用Nginx作为Web Server,Cache Server,Proxy Server网站包括百度,新浪,腾讯,网易,机锋网等,根据Netcraft统计,在2012年8月份,世界上最繁忙的网站中有11.48使用Ngin

[转载]SharePoint 2013测试环境安装配置指南

软件版本 Windows Server 2012 标准版 SQL Server 2012 标准版 SharePoint Server 2013 企业版 Office Web Apps 2013 备注:安装之前,需要各个服务器的IP地址,机器名称设置好,并且已经加入到域中. 一 安装AD域控制器 1. 添加AD服务 a) 打开服务器管理器,选择[添加角色和功能] b) 在[开始之前]页面直接点击[下一步] c) 选择[基于角色或基于功能的安装]后,点击[下一步] d) 选择[从服务器池中选择服务器

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-p

zabbix中文配置指南(转载)

zabbix中文配置指南 一.Zabbix简介 1.1 Zabbix简介 Zabbix是一个企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费的技术支持赢利.官方网站:http://www.zabbix.com官方文档:http://www.zabbix.com/documentation/2.0/manual/quickstart.Zabbix通过C/S模式采集数据,通过B/S模式在web端展示和配置. Zabbix运行条件: Server:

原创|强大!Nginx 配置在线一键生成“神器”

Nginx作为一个轻量级的HTTP服务器,相比Apache优势也是比较明显的,在性能上它占用资源少,能支持更高更多的并发连接,从而达到提高访问效率;在功能上它是一款非常优秀的代理服务器与负载均衡服务器;在安装配置上它安装,配置都比较简单. 关于Nginx部署.配置的文章公众号已经发布过很多: 深度总结|深入浅出Nginx HTTP服务器Nginx服务介绍续 Nginx优化配置详解 1分钟搞定 Nginx 版本的平滑升级与回滚 终极指南:提高Nginx服务器硬度的12个技巧 大流量.高负载场景 N

苹果ATS特性服务器证书配置指南

配置指南: 需要配置符合PFS规范的加密套餐,目前推荐配置: ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4 需要在服务端TLS协议中启用TLS1.2,目前推荐配置: TLSv1 TLSv1.1 TLSv1.2 1.Nginx 证书配置 更新Nginx根目录下 conf/nginx.conf 文件如下: server {    ssl_ciphers ECDHE-RSA-AES128-GCM-

nginx使用指南

1,运行nginx 可以运行nginx命令开启nginx: nginx 如果nginx已经开启了,可以运行nginx命令加-s 参数来控制nginx的运行 nginx -s signal signal的值: stop - 快速关闭 quit - 优雅的关闭 reload - 重新加载配置文件 reopen - 重新打开日志文件 例如:要等nginx处理完当前的请求后关闭nginx可以用下面的命令 nginx -s quit 修改了配置文件后需要运行下面的命令 nginx -s reload 2,

Nginx学习指南之模块的应用

一.自述 Nginx模块功能也是相当的丰富,但对于Apache Web来说,两者之间还是有区别的,大家都知道Nginx模块是直接被编译进了nginx.conf配置文件,而Apache则是被编译成为.SO文件,有些是需要在httpd.conf配置文件中指定是否加载,这样才能激活模块功能.Nginx模块有三个角色,Handlers(处理一个HTTP请求,并产生输出):Filters(处理由一个handler生成的输出):load-balancers(负载均衡器,当后端服务器符合一个以上后,依据算法选