设为首页 收藏本站
查看: 1170|回复: 0

[经验分享] centos5下nginx+fastcgi+php+mysql搭建dz论坛(上)

[复制链接]

尚未签到

发表于 2018-11-9 10:53:14 | 显示全部楼层 |阅读模式
nginx是什么,最初接触到nginx是在一个论坛,这篇文章是张宴写的《搭建一个胜过apache十倍的web服务器》,当时刚接触linux没多久,就web服务器只知道大名顶顶的apache。通过一段时间的学习才了解nginx。nginx("engine x")是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两年半了。Nginx因为性能稳定、低系统资源消耗而闻名,现在国内很多网站都是采用nginx来搭建的。因此熟练运用nginx是很有必要的!以下是我学习笔记,可供大家参考,有不足之处,请大家指正!  1.准备工作
  下载相关的软件包到/root目录下:
#wget http://nginx.org/download/nginx-0.7.64.tar.gz  #wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.00.tar.gz
  #wget http://php-fpm.org/downloads/php-5.3.0-fpm-0.5.12.diff.gz
  #wget http://museum.php.net/php5/php-5.3.0.tar.gz
  #wget http://down1.chinaunix.net/distfiles/mysql-5.0.40.tar.gz
  #wget http://download.comsenz.com/Discuz/7.2/Discuz_7.2_SC_UTF8.zip
  2.安装PCRE
  PCRE(Perl Compatible Regular Expressions)是perl语言正则表达式。安装此软件的目的是为了让nginx支持正则表达式,让nginx转发php请求到指定的应用服务器上(本机的web服务器也是应用服务器,所以转发到本机进行处理)
#tar zxvf pcre-8.00.tar.gz  #cd pcre-8.00
  #./configure
  #make
  #make install
  3.安装Nginx
#tar zxvf nginx-0.7.64.tar.gz  #cd nginx-0.7.64
  #./configure    --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
  #make
  #make install
由于编译安装时指定了用户nginx,所以必须建立一个系统用户nginx#useradd -r nginx  4.安装mysql
#useradd mysql  #tar zxvf mysql-5.0.40.tar.gz
  #cd mysql-5.0.40
  #./configure --prefix=/usr/local/mysql
  #make && make install
  #/usr/local/mysql/bin/mysql_install_db --user=mysql
  #chown -R mysql /usr/local/mysql/var
  #/usr/local/mysql/bin/mysqld_safe &
  #/usr/local/mysql/bin/mysqladmin -u root password 123456
  #cp support-files/my-medium.cnf /etc/my.cnf
  5.安装PHP并整合FastCGI
  在这里要说下php-fpm,这是一个用于管理FastCGI的一个PHP的补丁,安装时应该把补丁打到PHP的源码中!使用FastCGI技术可以实现应用服务器和web服务器的逻辑隔离,因此具有非常好的扩展性。启动php-fpm程序,他可以监听来至nginx转发过来的请求,并通过php应用程序对请求进行处理。这种技术和apache+php是不同的,apache是采用加载动态库的形式运行并处理php的请求。
#tar zxvf php-5.3.0.tar.gz  #gzip -cd php-5.3.0-fpm-0.5.12.diff.gz | patch -d php-5.3.0 -p1
  #./configure --prefix=/usr/local/php --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --with-mysql=/usr/local/mysql
  #make
  #make install
  #cp php.ini-production /usr/local/php/etc/php.ini
注意:必须选择版本号向对应的php和php-fpm进行安装!!!  6.整合Nginx、FastCGI、PHP
  完成了以上的安装,下面来要整合这些东西,否则无法完成请求处理!那么如何整合呢?下面我们给他们分工一下,Nginx接受访问本站点的全部请求,如果请求是静态文件就用Nginx进行处理,如果是动态的php程序文件就转发给php程序进行处理(这就涉及到正则表达式,所以在安装PCRE并让Nginx支持)。通过php-fpm进行监听转发过来的请求,并把这些请求交给php程序进行处理。处理完后返回给客户端。明白了工作原理,就可以修改Nginx和php-fmp的配置文件进行整合!
  1)修改Nginx的配置文件
  #vi /usr/local/nginx/conf/nginx.conf     #location ~ \.php$ {
  #    root           html;
  #    fastcgi_pass   127.0.0.1:9000;
  #    fastcgi_index  index.php;
  #    fastcgi_param  SCRIPT_FILENAME   /scripts$fastcgi_script_name;
  #    include        fastcgi_params;
  #}
  找到以上这段,去除前面的注释号#
  2)修改php-fpm的配置文件
#vi /usr/local/php/etc/php-fpm.conf        Unix user of processes  
  Unix group of processes
  
  找到以上选项去掉注释 ""
  default
  Address to accept fastcgi requests on.
  Valid syntax is 'ip.ad.re.ss:port' or just 'port' or '/path/to/unix/socket'
  127.0.0.1:9000
  注意红色的字体,这段设置php-fmp监听来至哪里来的请求!
  
  3)测试
vi /usr/local/nginx/html/info.php   
  写下以上内容。
  在浏览器上输入:http://IP/info.php ,正确的显示了php设置相关的页面,CentOS5下nginx+fastcgi+php+mysql的环境设置成功!


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-632767-1-1.html 上篇帖子: varnish+nginx实现单双web服务器缓存 下篇帖子: 架构 Varnish+nginx+php(FastCGI)+MYSQL5+MenCache+MenC
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表