首页 文章 精选 留言 我的

精选列表

搜索[AI运维],共10000篇文章
优秀的个人博客,低调大师

使用Nginx从零开始搭建基于LNMP架构的电影系统之一_Linux运维

按照常规,首先介绍一下Nginx是什么?虽然51cto上铺天盖地的Nginx的技术文章,我们这里也简单介绍一下。 Nginx是一个类Apache、IIS的Web服务器软件,由俄罗斯的Igor Sysoev开发、在短短数年内市场占有率迅速跃居第三位的轻量级、高性能的HTTP服务软件。Nginx专为性能优化而开发,其最知名的优点是它的稳定性和低系统资源消耗,以及对HTTP并发连接的高处理能力(单台物理服务器可支持30000~50000个并发请求),正因为如此,大量提供社交网络、新闻资讯、电子商务以及虚拟主机等服务的企业纷纷选择Nginx来提供WEB服务,如新浪博客、网易新闻、新华网RSS、六间房视频、迅雷安全中心、腾讯3G下载......等站点,都在使用Nginx服务。 Nginx的官方站点:http://sysoev.ru/en/、http://nginx.net Nginx中文Wiki:http://wiki.codemongers.com/NginxChs-------------------------------------------------------------------------- 上面是对Nginx的一个简单介绍,今天我要做的是首先使用Nginx、Mysql、PHP在CentOS5.4 X64上搭建LNMP平台,然后在LNMP平台上部署一套PHP视频点播系统(SKYUC天空网络电影系统),涉及的主要软件全部使用源代码安装。这个过程中涉及的软件下载地址: Nginx:http://www.nginx.org Mysql:http://www.mysql.com/downloads/ php:http://www.php.net/downloads.php SKYUC电影系统:http://www.skyuc.com -------------------------------------------------------------------------- 从这里开始,就正式进入安装篇: 首先编译安装Nginx 1.安装支持软件。 Nginx的配置及运行需要pcre、zlib等软件包的支持,因此应预先安装这些软件的开发包(devel)以便提供相应的库和头文件,确保Nginx的安装顺利完成。 2.创建运行用户、组 3.编译安装Nginx 4.为了使Nginx服务器的运行更加方便,可以为主程序Nginx创建链接文件,以便管理员直接执行Nginx命令就可以调用Nginx的主程序 5.检查配置文件与Apache的主程序httpd类似,Nginx的主程序也提供了一个“-t”选项用来对配置文件进行检查,以便找出不当或错误的配置。配置文件nginx.conf默认位于安装目录下的conf/子目录中,若要检查位于其他位置的配置文件,可使用“-c”选项来指定路径。 6.启动Nginx直接运行Nginx即可启动Nginx服务器,这种方式将使用默认的配置文件,若要改用其它配置文件,需添加“-c配置文件路径”选项来指定路径。这里需要注意:若服务器中安装有httpd等WEB服务软件,应采取措施(修改端口/停用或卸载)避免冲突。我这里直接使用Nginx来启动Nginx服务: 7.检查Nginx程序的监听状态,或者在浏览器中访问此WEB服务(默认页面将显示“Welcom to nginx!”),可以确认Nginx服务是否正常运行。 这里我使用Linux的字符终端浏览器(lynx)来访问网站: 8.Nginx的运行控制(重新加载/退出程序)通过killall命令发送HUP信号表示重载配置,QUIT信号表示退出进程:还可以使用kill信号来杀死进程:(下面第一条命令重新加载配置文件,第二条是退出Nginx程序,注意:关掉后,重新运行nginx开启程序) 9.使用Nginx服务脚本为了使用Nginx服务的启动、停止、重载等操作更加方便,可以编写Nginx服务脚本,并使用chkconfig和service工具来进行管理,也更加符合RHEL系统的管理习惯。下面是脚本内容: #!/bin/bash #chkconfig: - 99 20 #description: Nginx Service Control Script # PROG="/usr/local/nginx/sbin/nginx" PIDF="/usr/local/nginx/logs/nginx.pid" case "$1" in start) $PROG ;; stop) kill -s QUIT $(cat $PIDF) ;; restart) $0 stop $0 start ;; reload) kill -s HUP $(cat $PIDF) ;; *) echo "Usage: $0 {start|stop|restart|reload}" exit 1 esac exit 0 这样依赖,就可以通过Nginx脚本来启动、停止、重启、重载Nginx服务器了 10.配置文件nginx.conf在Nginx服务器的主配置文件nginx.conf中,包括全局配置、I/O事件配置、HTTP配置这三大块内容,配置语句的格式为“关键字值;”(末尾以分号表示结束),以“#”开始的部分表示注释。 1)全局配置 上面的配置中,worker_processes表示工作进程的数量。若服务器有多块CPU或者使用多核处理器,可以参考CPU核心总数来指定工作进程数,如设为8;如果网站访问量需求并不大,一般设为1就够用了。其它三项配置均已注释,例如Nginx的运行用户实际是编译时指定的nginx,若编译时未指定则默认为nobody。 2)I/O事件配置使用“events{}”界定标记,用指定Nginx进程的I/O响应模型,每个进程连接数等设置,对于2.6及以上版本的内核,建议使用epoll模型以提高性能,每个进程的连接数应根据实际需要来定,一般在10000一下(默认为1024) 注:我们来看看工作进程和进程连接数的换算关系:若工作进程数为8,每个进程处理4096个连接,则允许Nginx正常提供服务的连接数已超过3万个(4096*8=32768),当然具体还要看服务器硬件,网络带宽等物理条件的性能表现。 3)HTTP配置 11.Nginx的访问状态统计 Nginx内置了HTTP_STUB_STSTUS状态统计模块,用来反馈当前的WEB访问情况,配置编译参数时可添加--with-http_stub_status_module来启用此模块。要使用Nginx的状态模块功能,除了启用内建模块以外,还需要修改nginx.conf配置文件,指定访问位置并打开stub_status配置:因截图不方便,这里用文字描述:在nginx.conf中的HTTP配置的标记“sever{}”内指定访问位置并打开stub_status,方法如下: 保存配置,用nginx -t检查一下配置文件是否出错,并重新启动nginx服务: 在浏览器中访问Nginx服务器的/status网站位置,可以看到当前的状态统计信息: Active connections:表示当前的活动连接数。 server accepts handled requests:表示已经处理的连接信息,三个数字依次表示已处理的连接数(1)、成功的TCP握手次数(1)、已处理的请求数(1) 12.基于域名的虚拟WEB主机 使用Nginx搭建虚拟主机服务器时,每个虚拟WEB站点拥有独立的“server { }"配置段,各自监听的IP地址、端口号可以单独指定,当然网站名称也是不同的,这里我主要以两个虚拟主机来介绍:www.yye1.com和bbs.yye1.com,关于域名解析问题,我用hosts文件来完成,具体步骤这里就不在阐述了。 1)准备网站目录及测试文件: 2)调整nginx.conf配置文件:配置两个“server{}”区域,分别对应两个WEB站点,指定各自的网站名称、监听地址、网站根目录、访问日志等信息,然后重载配置 3)检查nginx.conf配置文件是否有错误,并重新加载一下配置文件: 4)访问虚拟WEB主机在浏览器中分别访问两个站点:www.yye1.com和bbs.yye1.com,若能看到各自的测试首页内容,就表示虚拟WEB主机的配置成功。 因为篇幅的关系,这篇文章就写到这里,不过这个只是第一部分,主要介绍了一下Nginx的使用,从下篇文章开始介绍LNMP平台的组合搭建并在LNMP架构上部署电影网站程序,请继续关注,谢谢。第二部分链接地址: (第二部分更新后,我会在这里粘贴地址的,敬请午饭们等待) 本文转自 jundong 51CTO博客,原文链接:http://blog.51cto.com/minitoo/813148,如需转载请自行联系原作者

优秀的个人博客,低调大师

《云数据中心构建实战:核心技术、运维管理、安全与高可用》——导读

前 言 为什么要写这本书 小的时候,家里有块菜地,常常和爸爸拎着桶浇灌菜园。后来,种的菜越来越多,拎桶浇水常常累得爸爸腰酸背痛。于是,便铺设了一根长长的管子直通菜园,用的时候打开水龙头,不肖几分钟整个菜地就被灌溉完了。 那个时候还小,不晓得也不考虑水是怎么来的。只觉得这种方法速度快了不少,还能随心所欲地大面积喷水,这可比拎桶要爽得多。 随着年龄的增长,我知道了水是来自江河湖泊、地下水及地表水,经过沉淀、消毒、过滤、净化等工艺流程,最后通过配水泵站和管道输送到居民家里。 相对于自来水的汲取和输送,相信老百姓更关心的是:水的价格是涨还是降?每天打开水龙头会不会停水?如果哪一天需要大量的用水,能不能供应得上? 事实上,万物相通! 作为一个用户是不会考虑网页用什么语言编码,也不会考虑数据存储在什么环境之中,更不会关心这个大环境采用什么管理平

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册