`
shixiaomu
  • 浏览: 383916 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ngix

阅读更多

Nginx安装简记(含PHP支持、虚拟主机、反向代理负载均衡)

系统环境:RHEL5 [ 2.6.18-8.el5xen ]

软件环境:
nginx-0.7.17
lighttpd-1.4.20.tar.gz
pcre-6.6-1.1
pcre-devel-6.6-1.1
php-5.1.6-5.el5

参考下载地址:
http://sysoev.ru/nginx/nginx-0.7.17.tar.gz (最新稳定版为0.6.32)
http://www.lighttpd.net/download/lighttpd-1.4.20.tar.gz
##########################################################################

一、安装支持软件
1、安装lighttpd以提取spawn-fcgi (如果站点不包含php页面,可以不安装spaw-fcgi、PHP)
shell> tar zxvf lighttpd-1.4.20.tar.gz
shell> cd lighttpd-1.4.20/
shell> ./configure && make
shell> cp -p src/spawn-fcgi /usr/sbin/spawn-fcgi
2、安装pcre和php(以下软件)
可使用RHEL5自带的rpm包安装,过程略。

二、安装nginx
shell> tar zxvf nginx-0.7.17.tar.gz
shell> cd nginx-0.7.17/
shell> ./configure –prefix=/opt/nginx –with-http_stub_status_module –with-http_ssl_module
shell> make && make install
shell> ln -sf /opt/nginx/sbin/nginx /usr/sbin/

三、nginx运行控制
1、检查配置文件有无语法错误
shell> nginx -t
2、启动(不带任何参数直接运行即可)
shell> nginx
3、重新加载nginx配置
shell> killall -s HUP nginx #//或者 killall -1 nginx
4、处理完当前请求后退出nginx
shell> killall -s QUIT nginx #//或者 killall -3 nginx

四、nginx配置用例
1、常规配置
shell> vi /opt/nginx/conf/nginx.conf
worker_processes 1; #//工作进程数
events {
use epoll; #//增加该事件提高I/O性能
work_connections 4096;
}
http {
include mime.types;
default_types application/octet-stream;
sendfile on;
tcp_nodelay on
keepalive_timeout 60;
server {
listen 80; #//设置监听端口,注意不要和Apache等其他Web程序冲突
server_name www.linux.org; #//指定使用的主机名
charset utf-8; #//指定站点文件的默认编码
location / {
root html; #//设置网站根目录
index index.html index.html;
}
error_page 500 502 503 504 /50x.html
location = /50x.html {
root html;
}
}
}

2、添加状态监控
shell> vi /opt/nginx/conf/nginx.conf #//增加以下内容
location ~ ^/NginxStatus/ {
stub_status on;
access_log off;
}
shell> killall -1 nginx
#//使用浏览器访问 http://nginx_server_ip/NginxStatus/ 即可看到状态统计页面。(三个数字分别表示:总共处理连接数、成功创建的握手次数、总共处理的请求数)

3、通过FastCGI方式支持PHP语言
1)启动FastCGI服务(用php-cgi做实际处理php页面的程序,用spawn-fcgi是便于同时开启多个php-cgi进程——“-C”选项控制子进程数)
shell>/usr/sbin/spawn-fcgi -a 127.0.0.1 -p 9000 -f /usr/bin/php-cgi -C 10
2)修改/opt/nginx/conf/nginx.conf配置文件,添加以下内容:
location ~ \.php$ {
root 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)重新加载配置
shell> killall -1 nginx

4、虚拟主机设置
修改nginx.conf文件,增加一个server {……}配置即可,每个虚拟主机的参数可以独立配置。
http {
server {
listen 80;
server_name www.vhost1.com;
access_log logs/vhost1.access.log main;
location / {
index index.html;
root /var/www/vhost1; #//第1个虚拟主机的网页根目录
}
}
server {
listen 80;
server_name www.vhost2.com;
access_log logs/vhost2.access.log main;
location / {
index index.html;
root /var/www/vhost2; #//第2个虚拟主机的网页根目录
}
}
}

5、基于反向代理的负载均衡
修改nginx.conf文件,增加upstream配置,指定对应服务器群的IP和权重,并调整server段中的网页根目录配置。使访问nginx服务器的HTTP请求分散到Web群集中的服务器来处理。
http {
upstream my_web_cluster {
server 192.168.2.11:8000 weight=3;
server 192.168.2.12:8000 weight=3;
server 192.168.2.13:8000 weight=3;
server 192.168.2.14:8000 weight=3;
server 192.168.2.15:8000 weight=3;
}
server {
listen 80;
server_name www.domain.com;
location / {
proxy_pass http://my_web_cluster;
proxy_set_header x-real-IP $remote_addr;
}
#//注:其他的location配置段(如关于.php文件的)需注释掉,否则可能影响该类文件的重定向。
}
}

分享到:
评论

相关推荐

    ngix服务器

    **Nginx服务器详解** ...它以其稳定性高、内存占用少、配置简单和处理静态文件速度快等特点,在Web服务领域广受青睐。在移动端直播场景中,Nginx结合RTMP协议,能够有效地实现流媒体的接收和推送,构建起一个高效的...

    安装ngix步骤文档

    ### 安装Nginx步骤详解 #### 一、前言 Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like协议下发行。其特点是占有内存少,并发能力强,事实上Nginx的并发能力确实在同...

    ngix + mysql + php 安装包

    这个"ngix + mysql + php 安装包"提供了便捷的一站式解决方案,尤其适合初学者,免去了繁琐的配置过程。 **Nginx** 是一个高性能的HTTP和反向代理服务器,以其轻量级、高并发处理能力而闻名。它的事件驱动模型和非...

    ngix_redis_tomcat集群

    redis,redis,tomcat集群实例,tomcat-session-jar文件夹下是需要的jar包,启动nginx,redis,tomcat后在浏览器中输入http://localhost/test/test2.jsp进行测试。

    ngix tomcat整合.zip

    ngix tomcat整合.zip

    实战ngix服务器

    Nginx选择了epoll和kqueue作为网络I/O模型,在高连接并发的情况下,Nginx是Apache服务器不错的替代品,它能够支持高达50 000个并发连接数的响应,运行稳定,且内存、CPU等系统资源消耗非常低。 ...

    nextcloud在linux和ngix环境下的配置文件

    很多nextcloud在linux和ngix环境下安装时,提供的单独nextcloud的linux配置文件因为存在空格,导致nextcloud启动失败,这个nextcloud是去空格的配置文件

    ngix tomcat整合

    ngix tomcat整合

    rtmp+ngix推流.7z

    RTMP(Real-Time Messaging Protocol)是一种广泛应用于在线流媒体传输的协议,主要用于视频直播和点播服务。在本资源“rtmp+nginx推流.7z”中,包含的是Windows环境下利用Nginx搭建RTMP服务器的相关配置和指导,...

    ngix部署到linux

    nginx部署到linuix的详细配置,如果不对自己上百度吧

    ngix安装部署脚本,实现自动化安装nginx

    通过该脚本可以直接安装nginx

    ngix.zip 用于lnmp搭建相关文件

    解压后有五个文件,atomic,nginx.conf,default.conf,nginx.sh,nginx_cn.zip . 由于nginx它加入GNU计划,所以在安装nginx之前必须要先同意和支持该计划,否则nginx无法安装。atomic上传到/usr/local/src目录下执行...

    在CentOS下安装Ngix服务及集群PHP、Tomcat

    在Linux系统中,尤其是CentOS,Nginx、PHP和Tomcat是常见的Web服务组件,分别用于静态资源处理、动态脚本解析和Java应用服务。... 一、Nginx安装与配置 1. 更新系统: ``` sudo yum update -y ``` ...

    fastdfs 和ngix

    【FastDFS介绍】 FastDFS是一个开源的轻量级分布式文件系统,主要针对互联网领域的大规模文件存储而设计,尤其适合图片、视频等大数据量的文件服务。它具有高可用性、高性能、高扩展性以及轻量级的特点。...

    apache-to-nginx:Apache配置文件的简单脚本转换为Ngix conf

    将Apache配置文件的简单脚本转换为Ngix conf。 安装 $ [sudo] npm install -g apache-to-nginx 用法 参数 $ apache-to-nginx < apache> < nginx> 例子 # generate configuration file with default template ...

    nginx_rtmp 视频流服务器代码

    vs2013编译 修改nginx.conf中加入rtmp { server { listen 1935; application live { live on; } ...如果运行时缺少libeay32.dll ,ssleay32.dll加上 建立一stop.bat 内容为nginx.exe -s stop 停止服务器

    linux+nginx+php+mysql环境配置指南.pdf

    ... 安装 Red Hat Linux 在开始安装 Linux 之前,需要选择语言和键盘布局。然后,选择基本存储设备,重新初始化所有分区,并创建自定义布局。选择 swap 分区的大小为 2 倍内存大小,其他分区则给根分区。...

Global site tag (gtag.js) - Google Analytics