发表于 2018-12-24 10:08:50

PHP基于HTTPD模块的方式跟MYSQL连接

  实验环境:
  1.VMware
  2.两台linux子机
  3.桥接,本机当客户机
  实验目的:
  1.编译HTTPD和编译PHP、编译MYSQL,熟悉编译过程和原理
  2.HTTPD和PHP在同一台服务器上,PHP作为HTTPD的模块来与MYSQL建立连接
  实验拓扑:
http://s3.运维网.com/wyfs02/M02/47/11/wKioL1P2DRbypisiAABre0erW90597.jpg
  二进制格式安装mysql
  1.安装包组和依赖所用到的包
#yum install pcre-devel
#yum groupinstall ‘development tools’
#yum groupinstall ‘desktop platform development’
#yum groupinstall ‘server platform development’  2.编译安装apr和编译安装apr-util
#tar xf apr-1.5.0.tar.bz2
#cd apr-1.5.0
#./configure --prefix=/usr/local/apr//安装路径
#make && make install
#tar xf apr-util-1.5.3.tar.bz2
#cd apr-util-1.5.3
#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
#make && make install  3. 新建用户以安全方式运行进程
#useradd mysql -r -s /sbin/nologin mysql  4.配置mysql,二进制格式的mysql包是解压出来只要配置一下就可以用的
#mkdir /mydata/data   //创建数据目录
#chown mysql:mysql /mydata/data
#cd /usr/local
#tar xf mariadb-5.5.36-linux-x86_64.tar.gz
#ln –sv mariadb-5.5.36-linux-x86_64.tar.gz mysql
#cd mysql
#chown –R root:mysql ./*
#mkdir /etc/mysql
#cp support-files/my-large.cnf/etc/mysql/my.cnf
#vim my.cnf  在下面添加一行数据目录的路径
http://s3.运维网.com/wyfs02/M01/47/0F/wKiom1P2EiujOo1tAAHHSiZSuAE435.jpg
#cd /usr/local/mysql/
#scripts/mysql_install_db--user=mysql --datadir=/mydata/data
//初始化mysql  5.提供服务启动文件
#cd /usr/local/mysql
#cp support-files/mysql.server /etc/rc.d/init.d/mysqld
#chmod +x /etc/rc.d/init.d/mysqld
#chkconfig --add mysqld
#service mysqld starthttp://s3.运维网.com/wyfs02/M00/47/11/wKioL1P2FRKAg1f4AAA-sR3at5g524.jpg
  6.加入环境变量,否则服务启用mysql命令
#vim /etc/profile.d/mysql.shhttp://s3.运维网.com/wyfs02/M01/47/0F/wKiom1P2FIXh6KCPAABESlGTuD4673.jpg
  这样就能用mysql命令进入数据库了
  7.导出man手册
#vim /etc/man.confighttp://s3.运维网.com/wyfs02/M02/47/11/wKioL1P2FtOAPfLHAAC8w0xf6PU276.jpg
  到这里,mysql就配置完成了,重新启动,mysql就监听在3306端口了
  编译安装php
  1.安装包组和依赖所用到的包
#yum install pcre-devel
#yum groupinstall ‘development tools’
#yum groupinstall ‘desktop platform development’
#yum groupinstall ‘server platform development’  2.编译安装apr和编译安装apr-util
#tar xf apr-1.5.0.tar.bz2
#cd apr-1.5.0
#./configure --prefix=/usr/local/apr
#make && make install
#tar xf apr-util-1.5.3.tar.bz2
#cd apr-util-1.5.3
#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
#make && make install  3.安装php
#./configure --prefix=/usr/local/php --with-mysql=mysqlnd
--with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl
--enable-mbstring --with-freetype-dir --with-jpeg-dir --with
-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml
--enable-sockets --with-apxs2=/usr/local/httpd/bin/apxs
--with-mcrypt=/usr/local/libmcrypt --with-config-file-path=/etc
--with-config-file-scan-dir=/etc/php.d --with-bz2 -enable-maintainer-zts  代码详解:
--prefix=/usr/local/php:设置安装路径
--with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd:
因为php跟mysql不在同一台服务器上,所以这里要这样做
--with-openssl:编译支持openssl支持
--enable-mbstring:支持多字节字符串,如果想支持中文,这个是必须启用的
--with-freetype-dir:字体处理工具,要实现字体的功能,要把这个装上
--with-jpeg-dir:能够直接生成jpeg图片
--with-png-dir:png图片
--with-zlib:支持压缩库
--with-libxml-dir=/usr:指定xml的库文件路径
--enable-xml:启用xml功能
--enable-sockets:允许php基于sockets方式进行通信
--with-apxs2=/usr/local/apache/bin/apxs:编译共享的 Apache 2.0 模块
--with-mcrypt:支持加密库
--with-config-file-path=/etc:php的配置文件存放位置
--with-config-file-scan-dir=/etc/php.d:所有以.ini结尾的文件存放位置
--with-bz2:支持bz2压缩
--enable-maintainer-zts:表示使用zts格式的php  提示请重新安装bzip2,这里需要安装bzip2和bzip2-devel这两个包,用yum安装吧
http://s3.运维网.com/wyfs02/M02/47/0F/wKiom1P2F-XBj-_-AAFi7cqheeg522.jpg
  没有找到libmcrypt这个包,这里我的光盘上没有这个包,那就下载编译好了。
http://s3.运维网.com/wyfs02/M01/47/11/wKioL1P2GU-gg-4GAAExCSzs8h8445.jpg
  4.编译安装libmcrypt
#tar xf libmcrypt-2.5.7.tar.gz
#cd libmcrypt-2.5.7
#./configure --prefix=/usr/local/libmcrypt
#make && make install  这样libmcrypt的次错误就消失了,这又出现了一个错误,是我粗心,打错字母了,应该是“file”,还有bzip2应该改成bz2。
http://s3.运维网.com/wyfs02/M01/47/0F/wKiom1P2GKHQw4IZAAD10M__DVw975.jpg
  这下终于没有错误了,就可以安装了
http://s3.运维网.com/wyfs02/M00/47/11/wKioL1P2Gg3TDd0jAAIC35GQgbU887.jpg
#make && make install  
  5.安装好之后编辑httpd的配置文件
#Vim /etc/httpd/httpd.conf  在里面添加两行,意思是让apache支持php
http://s3.运维网.com/wyfs02/M02/47/11/wKioL1P2Gnaxf5ZFAABf5foq7fU337.jpg
  6.提供php的主配置文件
#cd php-5.4.26
#cp php.ini-production /etc/php.ini  重启httpd服务
http://s3.运维网.com/wyfs02/M02/47/0F/wKiom1P2GcCR0rrrAAB7R9sOCmI612.jpg
  7.提供php的测试页面,测试
#vim /usr/local/httpd/htdocs/index.phphttp://s3.运维网.com/wyfs02/M02/47/11/wKioL1P2G3vBVQ8HAAA7iSxSNU8581.jpg
http://s3.运维网.com/wyfs02/M00/47/0F/wKiom1P2GifhxeP9AAGOsF7R5v8972.jpg
  8.测试php与mysql的连接
#yum install php-mysql   //这个包必须装上,因为php是依赖于php-mysql这个
                           //包跟mysql通信的
#vim /usr/local/httpd/htdocs/index.phphttp://s3.运维网.com/wyfs02/M01/47/10/wKiom1P2GtORNm5mAACbYwJl-fk107.jpg
http://s3.运维网.com/wyfs02/M00/47/11/wKioL1P2HAfRYgUcAACdw3_pvW0243.jpg
  到此为止,php作为httpd的模块与mysql连接就成功了,httpd的编译在我博客的前一篇有,这里不再编译。



页: [1]
查看完整版本: PHP基于HTTPD模块的方式跟MYSQL连接