小风儿 发表于 2018-11-19 11:21:30

在CentOS6.8上编译安装apache+php+mariadb(整理版)

  在CentOS6.8上编译安装apache+php+mariadb
  参考文档: http://www.cnblogs.com/dreamhome/p/4967903.html

[*]  使用wget或git下载源码速度很慢,使用迅雷下载会比快很多
[*]  bison和cmake安装顺序
[*]  网上的参考教程列出的下载地址部分失效,需要到官方网站重新找到下载地址
[*]  本文根据参考文档重新将各条命令合并在一起,基本上可以做到一键安装完成。
[*]  已经将文中需要的文件打包共享,欢迎前往下载。
[*]  验证环境:VirtualBox+CentOS6.8,安装过程中可能还需要额外安装或升级一些程序,如果网速较慢,那么需要挂载CentOS安装光盘到/media/CentOS。
[*]  全部编译安装完毕大约需要2个小时
[*]  如果直接在网页复制执行,可能会有隐藏字符导致命令执行失败
[*]  仅供研究交流使用,切勿用于工作环境。
  ===============================================
  原文 http://www.cnblogs.com/dreamhome/p/4967903.html
  #使用迅雷批量下载
  https://github.com/MariaDB/server/archive/10.2.zip
  http://www.apache.org/dist/apr/apr-1.5.2.tar.bz2
  http://mirrors.cnnic.cn/apache/apr/apr-util-1.5.4.tar.gz
  http://exim.mirror.fr/pcre/pcre-8.38.tar.gz
  http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.23.tar.gz
  http://cn2.php.net/distributions/php-5.6.25.tar.gz
  #上传到/temp,解压
  #也可以在centos下wget下载,简单但是较慢
  ##################################################################################
  #安装编译工具和依赖文件,先将所需要的文件下载到/temp
  mkdir /temp
  cd /temp
  yum -y install gcc gcc-c++ wget git
  yum -y install bison
  yum -y install cmake bison
  yum -y install readline-devel zlib-devel openssl-devel
  yum -y install libxml2 libxml2-devel
  unzip server-10.2.zip
  tar -jxvf apr-1.5.2.tar.bz2
  tar -zxvf apr-util-1.5.4.tar.gz
  tar -zxvf pcre-8.38.tar.gz
  tar -zxvf httpd-2.4.23.tar.gz
  tar -zxvf php-5.6.25.tar.gz
  #APR安装
  cd /temp/apr-1.5.2
  ./configure --prefix=/usr/local/apr
  make && make install
  cd /temp
  #APR-util
  cd /temp/apr-util-1.5.4
  ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
  make && make install
  cd /temp
  #PCRE
  cd /temp/pcre-8.38
  ./configure --prefix=/usr/local/pcre
  make && make install
  cd /temp
  #apache
  cd /temp/httpd-2.4.23
  ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre
  make && make install
  cd /temp
  #修改Apache配置文件
  \cp/usr/local/apache/conf/httpd.conf /usr/local/apache/conf/httpd.conf.bak2016 -rf
  \cp /usr/local/apache/bin/apachectl /etc/init.d/httpd -rf
  echo "LoadModule php5_module modules/libphp5.so" >> /usr/local/apache/conf/httpd.conf
  echo "AddType application/x-httpd-php .php" >> /usr/local/apache/conf/httpd.conf
  echo "ServerName mocc.lmu:8080" >> /usr/local/apache/conf/httpd.conf
  #设置成开机启动
  chkconfig --add httpd
  chkconfig httpd on
  #编译mariadb
  yum erase -y MariaDB-server MariaDB-client
  cd /temp/server-10.2
  mkdir /home/www/mariadbdata/ -p
  chmod 0770 /home/www/mariadbdata/
  cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
  -DMYSQL_DATADIR=/home/www/mariadbdata/ \
  -DSYSCONFDIR=/etc \
  -DWITH_INNOBASE_STORAGE_ENGINE=1 \
  -DWITH_ARCHIVE_STPRAGE_ENGINE=1 \
  -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
  -DWIYH_READLINE=1 \
  -DWIYH_SSL=system -DVITH_ZLIB=system -DWITH_LOBWRAP=0 \
  -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
  -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
  make && make install
  #php
  cd /temp/php-5.6.25
  ./configure --prefix=/usr/local/php \
  --with-apxs2=/usr/local/apache/bin/apxs \
  --with-config-file-path=/usr/local/php \
  --with-mysql=/usr/local/mysql \
  --with-mysqli=/usr/local/mysql/bin/mysql_config
  make && make install
  cd /temp
  \cp /temp/php-5.6.25/php.ini-development /usr/local/php/php.ini -rf
  #####################################################
  以下部分需要手工完成
  #修改配置文件
  #####################################################
  vi /usr/local/apache/conf/httpd.conf
  #DirectoryIndex index.html 改成 DirectoryIndex index.php index.html
  #修改/etc/init.d/httpd使Apache可以设置成开机启动
  vi /etc/init.d/httpd
  #在第一行#!/bin/sh下一行添加如下两行
  #chkconfig: 2345 10 90
  #description: Activates/Deactivates Apache Web Server
  #编辑php.ini
  将前面的;去掉使PHP支持mysql,并且配置时要指定--with-mysql的值,如果之前安装时未配置,需要重新配置,编译,安装
  ;extension=php_mysql.dll
  要使用phpmyadmin或mysqli函数打开,并且配置时要指定--with-mysqli的值,如果之前安装时未配置,需要重新配置,编译,安装
  ;extension=php_mysqli.dll
  要PHP支持png,jpg,gif等(phpcmsV9必须)打开
  ;extension=php_gd2.dll
  大字符集,支持多字符集之间的转换打开
  ;extension=php_mbstring.dll
  php5默认时间与北京时间相差八小时(少八小时)
  为什么呢?PHP5系列版本新增了时区设置,默认为格林威治时间,与中国所在的东8区正好相差8个小时
  查找
  ;date.timezone =
  将;去掉,并修改成
  date.timezone = PRC
  除了E_NOTICE类型的错误(Notice)不报告,其他的都报告,查找
  error_reporting = E_ALL
  改成
  error_reporting = E_ALL & ~E_NOTICE
  使 include 等可以包含域外网页如 include_once "http://www.126.com";
  找到
  allow_url_include = Off
  改成
  allow_url_include = On
  vi /usr/local/php/php.ini
  启动Apache,之前未启动是因为未安装PHP关联前Apache配置文件中LoadModule php5_module modules/libphp5.so找不到加载模块报错
  service httpd start
  开放防火墙80端口访问
  firewall-cmd --zone=public --add-port=80/tcp --permanent
  重启防火墙
  firewall-cmd --reload

页: [1]
查看完整版本: 在CentOS6.8上编译安装apache+php+mariadb(整理版)