名词释义
CGI:HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上。
FastCGI
像是一个常驻(long-live)型的CGI,它可以一直执行着,只要激活后,不会每次都要花费时间去fork一次(这是CGI最为人诟病的fork-and-execute模式)。它还支持分布式的运算,即FastCGI程序可以在网站服务器以外的主机上执行并且接受来自其它网站服务器来的请求。<?xml:namespace prefix="o">?xml:namespace>
Pcre
:perl兼容的正则表达式库,因为我们安装neginx需要多个正则表达式,原来的比较老,并且效率低,所以我们安装虚拟的pcre。
Libevent
:跨平台事件通知库,而neginx是利用的epoll机制,而epoll又是基于事件触发库的,所以libevent刚好为我们提供了这个平台。
我们这里进行简单的释义,仅仅让大家明白它是做什么的,如果想要进一步理解,大家可以自行上官方网站查询阅读。
Apacheselect轮询机制3000访问量进程比较稳定的一种方式,但是需要产生子进程,消耗大量的服务器资源。
Neginxepoll(触发)时间通知机制50000线程效率更高
Neginx基于http的反向代理服务器代理速度快同事可以实现邮件服务的反向代理
下面我们开始搭建LNMP环境,上面了解了Apache和Neginx的差别,相信大家也应该明白LAMP和LNMP的差别了。
首先必须是linux的系统,这里我们应用Centos5.8版本的。
然后是Neginx,我们应用nginx-<?xml:namespace prefix="st1">?xml:namespace>1.3.16。
接着是Mysql,我们应用mysql-5.5.15。
最后是Php,我们应用php-5.4.14。
当然除了这几个包我们还需要另外的,依赖的包,libevent-2.0.18,pcre我们用rpm进行安装,当然如果我们想要优化php的话还可以安装xcache-3.0.1,这是个php的加速工具。
好了,准备工作做完,我们开始安装。
一.
安装Mysql
由于我们下载的是mysql的绿色版,也就是二进制文件,所以我们将其解压直接可以使用
我们直接解压到/usr/local
由于mysql的名字比较长,所以我们创建一个到mysql的软连接
由此看出此源码已经是二进制文件了
然后我们直接查看安装帮助
其实大家在安装的时候都可以看一下源码里面所给的说明文档,这样有助于我们安装,说明文档一般就为上面的两个。下面的使我们安装这个所需要的步骤:
创建组,账号
修改权限
初始化脚本
把权限改回来不过,data的所有者还是为mysql
拷贝mysql的配置文件
拷贝控制文件并加上执行权限
添加开机启动
启动测试
将mysql加入常用路径
修改密码为123(由于刚开始我们不知道密码是多少,所以提示我们输入密码时直接确定)
然后就和一前的一样了将库文件和头文件路径加入到常用的路径中去
应用
<?xml:namespace prefix="v">?xml:namespace>ldconfig
头文件
Okmysql安装完成,然后我们开始安装neginx
前面我们说了,安装Neginx所需要的包,所以我们先把那两个包安装上PCRE和Livevent
因为系统之前已经安装过pcre所以我们只用安装一个pcre-devel即可我们用yum安装,yum配置不用再讲了吧,我们之前提过好几次了,
然后源码安装livevent
安装完成后,修改路径
应用
头文件
好的我们开始安装Neginx
由于neginx启动的话也是一个进程,所以也需要一个身份,所以开始安装前我们先建立一个neginx组,和用户
我们创建一个很牛的用户吧,就如上,如果用户被劫持了,其他人也登不上,所以建用户也是很深奥的
然后我们开始安装
--conf-path=/etc/nginx/nginx.conf\
--error-log-path=/var/log/nginx/error.log\错误日志存放的位置
--http-log-path=/var/log/nginx/access.log\成功日志存放的位置
--pid-path=/var/run/nginx/nginx.pid\进程号存放的位置
--lock-path=/var/lock/nginx.lock\启动后锁文件存放的位置
--with-http_ssl_module\流媒体模块
--with-http_stub_status_module\本机输出信息
--with-http_gzip_static_module\压缩
--http-client-body-temp-path=/var/tmp/nginx/client/\客户端的一些临时目录
--http-proxy-temp-path=/var/tmp/nginx/proxy/\反向代理加速目录
--http-fastcgi-temp-path=/var/tmp/nginx/fcgi/\fcgi的目录
这是./configure时需要的参数,大家看看呗!
然后我们自己做一个配置文件
Vim/etc/init.d/nginx
其实我们可以把http的或者vsftp的修改一下即可,很简单的哦,实在不行我这里有下载的。
我们首先应该理解,php之间是怎么通信的,这就用到了我们上面所解释的fcgi,大家可先阅读上面的。
解压---
à
编译----
à
安装,还是这几个步骤,不过需要注意的是编译时候的一些参数
--with-mysql=/usr/local/mysql\
--with-mysqli=/usr/local/mysql/bin/mysql_config\
--with-config-file-path=/etc/php\
放置php的配置文件
--with-config-file-scan-dir=/etc/php5.d
放置额外的一些配置文件
由于php-fpm的结合是需要一个服务所以需要一个配置文件这个配置文件我们在安装的时候已经生成,所以拷贝并授予执行权限
然后配置控制文件控制文件在我们的php下面的一个etc目录里面,里面有一个样本,我们只需要拷贝即可
大家注意,当我们请求来的时候,如果访问的是php,它的流程是
所以我们还要配置以下nginx的配置文档,用来处理Nginx与php的配置机制
这个配置的大致意思就是,首先请求来的时候访问的主目录为nginx的html目录,然后连接本地的9000端口,访问的主页为index.php,和一些fcgi的参数,然后需要fcgi的配置文件
然后我们为了是php使用起来更简洁,方便,迅速,对其进行加速
同以前一样,我们先解压,然后进入到解压的目录里面,然后查看安装说明
我们可以看到配置的过程,然后就按照这个步骤进行安装
由图可以看出在编译之前需要一个工具phpize,这个工具其实是在我们安装php的时候自动生成的,rpm安装时,它的安装在默认目录下的php_devel里面源码安装时它的默认安装路径为/usr/local/php/bin/,
然后在我们编译的时候,一般都需要一些参数,所以我们可以先查看一下所需的参数,以免出现错误
因为我们xcache是与php连接的所以也需查看一下和php连接的参数
然后编译安装完成后,其实它生成的是一个模块儿如图:
然后我们将php和xcache进行连接,其实一般有两种方式连接,第一,价格xcache源目录下的xcache.ini与php.ini直接结合。第二,将这个xcache.ini直接放置到php的额外功能目录里面(/etc/php5.d),这样的话也可以实现结合
编辑完xcache的配置文件后才后重启php-fpm因为php的工作是基于fcgi的
可以看待已经连接上了,不过这样的话不方便管理员进行管理,查看记录,所以我们进行修改
在xcache的源代码目录里面有一个htdocs的multiple,这个目录里面有一些php的网业,当然也就是方便管理员进行管理的一些网业,我们直接把该目录拷贝到主网页的目录下面
cp-rhtdocs//usr/local/nginx/html/
然而当我们将它拷贝过去的时候他是没有执行读取权限的,所以我们给它加上权限
还有htdocs目录下的index.php的读取权限
呵呵,很明显不成功,这是因为默认的管理功能是需要认证的,所以我们去进行添加账户密码
由于配置文件里面所需要的密码为md5加密的所以我们这样
这样产生一个密码为admin的md5加密密文,然后将密文添加至xcache.ini的配置文档里面
这样我们就可以进行管理了,里面的清除缓存了,删除脚本缓存啦,等一系列能进行php加速的功能。
到这里我们这个环境,还有简单的php加速就算完成了。
这是老本我的小站,希望大家光临!www.wdzaxsp.tk