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

[经验分享] Nginx+php(FastCGI)+Memcached+Mysql+APC Nginx高性能web服务器安装 APC模块安装 l

[复制链接]

尚未签到

发表于 2018-12-26 06:18:52 | 显示全部楼层 |阅读模式
  Nginx+php(FastCGI)+Memcached+Mysql+APC 是目前主流的高性能服务器搭建方式!适合大中型网站,小型站长也可以采用这种组合!
  Nginx 超越 Apache 的高性能和稳定性,使得国内使用 Nginx 作为 Web 服务器的网站也越来越多,其中包括国内最大的电子地图MapBar、新浪博客、新浪播客、网易新闻等门户网站频道,六间房、56.com等视频分享网站,Discuz!官方论坛、水木社区等知名论坛,豆瓣、YUPOO相册、海内SNS、迅雷在线等新兴Web 2.0网站,更多的网站都在使用Nginx配置。
  【Nginx+php(FastCGI)+Memcached+Mysql+APC Nginx高性能web服务器安装 APC模块安装 linux apc 配置 fastCGI安装配置】
  下载所需的安装包:这里采用源码包编译安装:本博客集成下载
  http://wgkgood.gicp.net/download/nginx-0.7.61.tar.gz
  http://wgkgood.gicp.net/download/pcre-8.01.tar.gz
  http://wgkgood.gicp.net/download/memcache-2.2.5.tgz
  http://wgkgood.gicp.net/download/libevent-1.4.12-stable.tar.gz
  http://wgkgood.gicp.net/download/APC-3.1.4.tgz
  下载到 /usr/src下
  另外还有两个包mysql-5.1.41.tar.gz、php-5.3.5.tar.gz 【其他相似版本也可以!】可以在官网下载。
  一、正式安装Nginx、【安装nginx之前需要安装pcre包和zlib以支持重写,正则以及网页压缩等等】
  (1)首先安装pcre:
  cd  /usr/src  &&tar xzf pcre-8.01.tar.gz   &&cd pcre-8.01  &&  ./configure   –prefix=/usr/local/pcre  &&make &&make install
  (2)、然后再安装nginx :
  useradd www  && cd  /usr/src && tar xzf  nginx-0.7.61.tar.gz   &&cd  nginx-0.7.61  &&  ./configure –prefix=/usr/local/nginx –with-http_stub_status_module –with-openssl=/usr/ –with-pcre=/usr/src/pcre-8.01  –user=www –group=www  &&make  &&make install
  【nginx注意*  –with-pcre=/usr/src/pcre-8.01指向的是源码包解压的路径,而不是安装的路径,否则会报
make[1]: *** [/usr/local/pcre/Makefile] Error 127 错误】  二、接下来安装mysql
  cd   /usr/src && tar xzf  mysql-5.1.41.tar.gz   && cd mysql-5.1.41  && ./configure –prefix=/usr/local/mysql/ –enable-assembler –with-extra-charsets=complex –enable-thread-safe-client –with-big-tables –with-readline –with-ssl –with-embedded-server –enable-local-infile –with-plugins=innobase  && make  &&make install
  (2)、mysql安装完毕,创建mysql用户和组并初始化数据库,并启动数据库。
  cd  /usr/local/mysql && useradd mysql && chown -R  mysql:mysql   /usr/local/mysql  &&  /usr/local/mysql/bin/mysql_install_db  –user=mysql   &&   chown -R   mysql:mysql  var/  && ./bin/mysqld_safe   –user=mysql &
  即可。【如果mysql启动报错,请检查 /usr/local/mysql/var 目录,mysql是否有权限】
  三、安装 php :
  cd   /usr/src    &&tar xzf  php-5.3.5.tar.gz   && cd php-5.3.5  && ./configure –prefix=/usr/local/php –with-config-file-path=/usr/local/php/etc –with-mysql=/usr/local/mysql –with-mysqli=/u
  sr/local/mysql/bin/mysql_config –with-iconv-dir=/usr/local –with-freetype-dir –with-jpeg-dir –with-png-dir –with-zlib –with-li
  bxml-dir=/usr –enable-xml –disable-rpath –enable-discard-path –enable-safe-mode –enable-bcmath –enable-shmop –enable-sysvsem
  –enable-inline-optimization –with-curl –with-curlwrappers –enable-mbregex  –enable-fpm  –enable-sockets  && make  &&make install
  安装完毕!【注意这个参数在此可以不加–enable-fastcgi;其他之前版本需要加上,以上安装根据自己的选择添加,如果报错,根据具体报错找原因】
  四、整合Nginx和php(FastCGI)安装完php-5.3.5后支持fastCGI
  (1)、配置nginx ,拷贝nginx配置文件:
  user  www www;
  worker_processes 8;
  error_log  /usr/local/logs/nginx/error.log  crit;
  pid        /usr/local/nginx/nginx.pid;
  #Specifies the value for maximum file descriptors that can be opened by this process.
  worker_rlimit_nofile 51200;
  events
  {
  use epoll;
  worker_connections 51200;
  }
  http
  {
  include       mime.types;
  default_type  application/octet-stream;
  #charset  gb2312;
  server_names_hash_bucket_size 128;
  client_header_buffer_size 32k;
  large_client_header_buffers 4 32k;
  client_max_body_size 8m;
  sendfile on;
  tcp_nopush     on;
  keepalive_timeout 60;
  tcp_nodelay on;
  fastcgi_connect_timeout 300;
  fastcgi_send_timeout 300;
  fastcgi_read_timeout 300;
  fastcgi_buffer_size 64k;
  fastcgi_buffers 4 64k;
  fastcgi_busy_buffers_size 128k;
  fastcgi_temp_file_write_size 128k;
  gzip on;
  gzip_min_length  1k;
  gzip_buffers     4 16k;
  gzip_http_version 1.0;
  gzip_comp_level 2;
  gzip_types       text/plain application/x-javascript text/css application/xml;
  gzip_vary on;
  #limit_zone  crawler  $binary_remote_addr  10m;
  server
  {
  listen       80;
  server_name  wgkgood.gicp.net;
  index index.php index.htm index.html;
  root  /usr/webapps/www;
  #limit_conn   crawler  20;
  location ~ .*\.(php|php5)?$
  {
  #fastcgi_pass  unix:/tmp/php-cgi.sock;
  fastcgi_pass  127.0.0.1:9000;
  fastcgi_index index.php;
  include fcgi.conf;
  }
  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
  {
  expires      30d;
  }
  location ~ .*\.(js|css)?$
  {
  expires      1h;
  }
  log_format  access  ‘$remote_addr – $remote_user [$time_local] “$request” ‘
  ‘$status $body_bytes_sent “$http_referer” ‘
  ‘”$http_user_agent” $http_x_forwarded_for’;
  access_log  /usr/local/logs/nginx/access.log  access;
  }
  }

  Nginx配置完毕!启动nginx ;/usr/local/nginx/sbin/nginx 即可,重启nginx命令如下/usr/local/nginx/sbin/nginx –s >  此配置文件仅供参考,感谢张宴老师!
  (2)、配置fcgi.conf文件如下
  fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
  fastcgi_param  SERVER_SOFTWARE    nginx;
  fastcgi_param  QUERY_STRING       $query_string;
  fastcgi_param  REQUEST_METHOD     $request_method;
  fastcgi_param  CONTENT_TYPE       $content_type;
  fastcgi_param  CONTENT_LENGTH     $content_length;
  fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
  fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
  fastcgi_param  REQUEST_URI        $request_uri;
  fastcgi_param  DOCUMENT_URI       $document_uri;
  fastcgi_param  DOCUMENT_ROOT      $document_root;
  fastcgi_param  SERVER_PROTOCOL    $server_protocol;
  fastcgi_param  REMOTE_ADDR        $remote_addr;
  fastcgi_param  REMOTE_PORT        $remote_port;
  fastcgi_param  SERVER_ADDR        $server_addr;
  fastcgi_param  SERVER_PORT        $server_port;
  fastcgi_param  SERVER_NAME        $server_name;
  # PHP only, required if PHP was built with –enable-force-cgi-redirect
  fastcgi_param  REDIRECT_STATUS    200;
  五、配置php配置文件:
  cd  /usr/local/php5/etc/ &&  cp
  php-fpm.conf.default   php-fpm.conf 然后根据提示修改php-fpm.conf里面的选项。
  配置完毕后,启动php-fpm
  cp  /usr/src/php-5.3.5/sapi/fpm/init.d.php-fpm  /etc/init.d/php-fpm 然后启动 /etc/init.d/php-fpm  start 即可。
  六、安装apc配置:
  cd  /usr/src && tar xzf  APC-3.1.4.tgz  &&cd  APC-3.1.4
  /usr/local/php5/bin/phpize  【增加扩展模块】
  ./configure –enable-apc –enable-apc-mmap –with-php-config=/usr/local/php5/bin/php-config
  &&make&& make install
  安装完后会生成一个apc.so在/usr/local/php5/lib/php/extensions/no-debug-non-zts-20060613/里面。
  七、安装memcached,使fastcGI支持memcached
  首先安装libevent,
  cd  /usr/src  && tar xzf libevent-1.4.12-stable.tar.gz  &&  cd  libevent-1.4.12-stable &&  ./configure –prefix=/usr/local/libevent &&make && make install
  然后安装memcached
  tar xzf  memcache-2.2.5.tar.gz  && cd memcache-2.2.5  && /usr/local/php5/bin/phpize  && ./configure –prefix=/usr/local/memcached  –with-libevent=/usr/local/libevent –with-php-config=/usr/local/php5/bin/php-config &&make  &&make install
  安装完后,会在/usr/local/php5/lib/php/extensions/no-debug-non-zts-20060613/里生成一个memcache.so 这个模块:
  八、接下来修改php.ini
  默认的php.ini在/usr/local/php5/lib/php.ini 你也可以指定:
  extension_dir = “./”
  修改为
  extension_dir=”/usr/local/php5/lib/php/extensions/no-debug-non-zts-20090626″
  把下面这些添加到最后:
  extension = apc.so
  extension=memcache.so //这里引用缓存模块
  [APC]
  apc.enabled = 1
  apc.shm_segments = 1
  apc.shm_size = 64M
  apc.optimization = 1
  apc.num_files_hint = 0
  apc.ttl=7200
  apc.user_ttl=7200
  apc.gc_ttl = 3600
  apc.cache_by_default = on
  安装到此已经完成!
  重新启动nginx和php-fpm ,用测试页面访问。
  此文章仅供参考!有不妥之处欢迎指正!共同学习!
  http://wgkgood.gicp.net  本博客采用的nginx+fastcGI+mysql+memcached+apc完美架构整合!


运维网声明 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.yunweiku.com/thread-655814-1-1.html 上篇帖子: linux下memcached的启动/结束 下篇帖子: memcached-1.4.5安装时候出现错误error: dereferencing type-punned pointer will break stric
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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