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

[经验分享] apache+php+mysql分离搭建LAMP

[复制链接]

尚未签到

发表于 2018-11-20 09:09:52 | 显示全部楼层 |阅读模式
        apache+php+mysql分离搭建LAMP

  

  apache和mysql的安装不在描述
  分层时
  1、apache配置文件修改
  1)、启用httpd的相关模块
  在Apache httpd 2.4以后已经专门有一个模块针对FastCGI的实现,此模块为mod_proxy_fcgi.so,它其实是作为mod_proxy.so模块的扩充,因此,这两个模块都要加载
  LoadModule proxy_module modules/mod_proxy.so
  LoadModule proxy_fcgi_module modules/mod_proxy_f
  2)、如果不在虚主机中添加则直接在主配置文件中添加
  ProxyRequests Off
  ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/DocumentRoot路径/$1
  3、编辑apache配置文件httpd.conf,让apache能识别php格式的页面,并支持php格式的主页
  #vim /etc/httpd/httpd.conf
  1、添加如下二行
  AddType application/x-httpd-php .php
      AddType application/x-httpd-php-source .phps
      2、定位至DirectoryIndex index.html
      修改为:
       DirectoryIndex index.php index.html
  2、mysql编译安装没有变化注意编译时会大量消耗资源,请酌情添加swap交换内存来应对
  mysql需要创建一个远程连接用户
  mysql> GRANT ALL PRIVILEGES on wpdb.* TO 'wpuser'@'%' IDENTIFIED BY 'wppass';
  mysql> create database wpdb
  mysql> flush privileges
  3、php安装
  二、编译安装php-5.6.2
  1)、解决依赖关系:
  配置好yum源后执行
  Desktop Platform Development
  如果想让编译的php支持mcrypt扩展,还需要下载安装
  libmcrypt
  libmcrypt-devel
  mhash
  mhash-devel
  建议配置epel源直接yum安装libmcrypt-devel
  2)、编译安装php-5.6.2
  tar xf php-5.6.2
  cd php-5.6.2
  ./configure --prefix=/usr/local/php --with-mysql=mysqlnd --with-openssl --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --enable-fpm --with-mcrypt --with-config-file-path=/etc/php/ --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts --with-gd
  

  说明:
  因为这里PHP是以fastcgi模式运行不需要将PHP编译成httpd的一个模块所以要取消--with-apxs2这个选项,如果使用PHP5.3以上版本,也就是mysql与php不再同一主机上时,为了链接MySQL数据库,可以指定mysqlnd,这样在本机就不需要先安装MySQL或MySQL开发包了。mysqlnd从php5.3开始可用,可以编译时绑定到它(而不用和具体的MySQL客户端绑定形成依赖),但从PHP5.4开始它就是默认设置了。
  ./configure --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd
  上面的结果是,mysql、mysqli、pdo这三个操作mysql的扩展,都配置使用mysqlnd库来操作mysql
      --with-mysql项指定使用mysqlnd客户端库了,根本不需要依赖于mysql的安装路径了。因为是使用php源码中自己的的库。
      这个库是一个c语言编写的,以扩展形式加入php引擎。
      这个库就在php的源码包中,自己编译安装,就生成在自己在php中,根本不需要依赖于神马mysql提供的客户端了
      所以顾名思义,叫做Native driver,本地驱动(操作mysql的驱动)。
  
  make && make install
  为php提供配置文件:
  cp php.ini-production /etc/php.ini
  

  3)、配置php-fpm
  为php-fpm提供Sysv init脚本,并将其添加至服务列表
  #cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
  #chmod +x /etc/rc.d/init.d/php-fpm
  #chkconfig --add php-fpm
  #chkconfig --list php-fpm
  为php-fpm提供配置文件
  #cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
  编辑php-fpm的配置文件:
  vim /usr/local/php/etc/php-fpm.conf
  配置fpm的相关配置选项为你所需要的值,并启用pid文件:
  pid = /usr/local/php5/var/run/php-fpm.pid
  pm = dynamic
  pm.max_children = 50 同一时间内最大的线程数
  pm.start_servers = 5 启动时创建的线程数
  pm.min_spare_servers = 3 最小空闲线程数 空闲线程小于则创建线程
  pm.max_spare_servers = 5 最大空闲线程数 空闲线程大于最大则杀死空闲线程
  listen = 0.0.0.0:9000 修改监听本机的所有网卡的9000端口
  

  接下来就可以启动php-fpm
  service php-fpm start
  使用如下命令验证
  #ps aux | grep php-fpm
  默认情况下,fpm监听在127.0.0.1的9000端口,也可以使用如下命令验证是否已经监听在相应的套接字。
  ss -tnul | grep php-fpm
  tcp    LISTEN     0      128          *:9000                *:*
  4)在wordpress上创建DocumentRoot路径的绝对路径
  4、安装wordpress
  将wordpress包上传到php-fpm的上解压到DocumentRoot目录下
  解压wordpress
  mv wordpress/* /var/www/html/
  cp wp-config-sample.php wp-config.php
  vim wp-config.php
  修改DB_NAME数据库名称DB_USER用户以及DB_PASSWORD用户密码
  DB_HOST主机名等
  在浏览器输入192.168.1.138/wp-admin/install.php
  填写一些基本信息完成安装
  最后:一、感谢马哥,马哥我就不在宣传了,他的视频是我看过的最符合我思维逻辑的,各种深入浅出在深入在浅出。佩服佩服。

  二、好久没有写了,也就是说没有看视频了真是罪过。

  三、我回归了。

  四、下一次写LVS

  





运维网声明 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-637201-1-1.html 上篇帖子: Apache 源码包安装 下篇帖子: 解析LAMP中Apache、php、mysql 默认安装路径
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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