开发者社区> 李名赫> 正文

Linux下apache+php+mysql搭建配置记录

简介:
+关注继续查看

第1章  环境说明

1.1 系统说明

CentOS 6.4


1.2 软件说明

httpd-2.4.10.tar.gz

apr-util-1.5.3.tar.gz

apr-1.5.1.tar.gz

pcre-8.34.tar.gz

php-5.6.0.tar.bz2

libmcrypt-2.5.3.tar.gz

mysql-5.1.51.tar.gz


第2章  Apache搭建说明

2.1 安装依赖包

yum install make openldap-devel ntp vim-enhanced gcc gcc-c++ gcc-g77 flex bison autoconf bzip2-devel ncurses-devel openssl-devel libtool*  zlib-devel libxml2-devel libjpeg-devel libpng-devel libtiff-devel fontconfig-devel freetype-devel libXpm-devel gettext-devel curl-devel curl pam-devel  openldap-devel e2fsprogs-devel krb5-devel libidn libidn-devel -y

2.2 安装apr


tar -zxvf apr-1.5.1.tar.gz
 cd apr-1.5.1
 ./configure  --prefix=/usr/local/apr
make  && make install

2.3 安装apr-util


tar -zxvf apr-util-1.5.3.tar.gz
cd apr-util-1.5.3
 ./configure \
--prefix=/usr/local/apr-util \
--with-apr=/usr/local/apr
 make && make install

2.4 安装pcre


tar -zxvf pcre-8.34.tar.gz
cd pcre-8.34
./configure --prefix=/usr/local/pcre
make && make install

2.5 安装apache


tar -zxvf httpd-2.4.10.tar.gz
cd httpd-2.4.10
./configure --prefix=/usr/local/apache \
--with-apr-util=/usr/local/apr-util/ \
--with-pcre=/usr/local/pcre/ \
--with-apr=/usr/local/apr/
make && make install

在make的时候,报错:

exports.c:2429: error: redefinition of 'ap_hack_apr_xlate_open'
exports.c:2013: note: previous definition of 'ap_hack_apr_xlate_open' was here

打开 server/exports.c ,发现里面确实有大量重复。apr 与 apr-util 都包含了重复同样头文件。删除重复再make就可以了。

make install 正常


2.6 配置文件说明

/usr/local/apache/conf/httpd.conf

DocumentRoot "/usr/local/apache/htdocs"

修改此条可配置项目运行目录。

启动文件


/usr/local/apache/bin/apachectl start

报错:httpd: Could not open configuration file /usr/local/apache2/conf/httpd.conf: No such file or directory

这个错误,是由于上次./configure时--prefix=/usr/local/apache2,而本次没有make clean时没有清除上次的记录。解决方法:要么删除整个目录,要么


./configure --prefix=/usr/local/apache2
make clean

再按上面的步骤 ./configure,make

这次正常通过~


2.7 安装MySql


tar zxf mysql-5.1.51.tar.gz
cd mysql-5.1.51
./configure --prefix=/usr/local/mysql
make && make install

安装完之后,执行 mysql 报错:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

这是因为本地的mysql服务器没有启动起来。


service mysqld start

再次输入 mysql 命令就没有问题了。


第3章  PHP搭建说明

3.1 安装libmcrypt


tar xvf libmcrypt-2.5.3.tar.gz
cd libmcrypt-2.5.3
./configure
make && make install

3.2 安装php


tar -zxvf php-5.6.0.tar.gz
cd php-5.6.0
./configure --prefix=/usr/local/php \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-config-file-path=/usr/local/php/etc 
make

报错:php-5.6.0/ext/iconv/iconv.c:1001: undefined reference to `libiconv'

原因是Makefile在链接的时候,没有将iconv库链进去。

解决方法:


make ZEND_EXTRA_LIBS='-liconv'
#...略
Build complete.
Don't forget to run 'make test'.

通过了!编译是通过了,可以执行make test测试一下。不测试也没什么问题。


cp php.ini-production /usr/local/php/etc/php.ini

第4章  修改配置并测试

4.1 修改apache配置文件支持php

打开 /usr/local/apache/conf/httpd.conf

将文件中:DirectoryIndex index.html

替换为:DirectoryIndex index.html index.php

并添加:AddType application/x-httpd-php .php


4.2 测试php支持

在 /usr/local/apache/htdocs/ 目录中创建测试php页面 test.php


<?php
phpinfo();
?>

重启apache服务后,在浏览器上输入网址:http://127.0.0.1/test.php

看到站点,则说明php搭建完成。


结果OK了!!!!!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
冬季实战营第一期:从零到一上手玩转云服务器 | 学习报告
训练营日期:2022年1月17日 - 2022年1月23日 需要先报名后学习,实际是17-21共5天5个场景的学习,链接地址:https://developer.aliyun.com/adc/series/wintercamplist1?spm=a2c6h.26268694.J_3660455150.2.503610f8RnszVx 我是5月份学习的,并没有实时参加训练营,因为觉着本次训练营课程设置很实用,所以对本次学习做个总结。
6 0
基于springboot来实现对日志文件内容的监控
基于springboot来实现对日志文件内容的监控
4 0
手撸一款简单高效的线程池(五)
在之前的内容中,我们给大家介绍了 C++实现线程池过程中的一些常用线优化方案,并分析了不同机制使用时的利弊。这一篇,是线程池系列的最后一章。我们会介绍一下 CGraph 中的 threadpool 如何使用,给出性能对比,并对接下来的工作做一些展望。让我们在线程池性能优化和功能提升的道路上,越走越远。
5 0
JSP - 起源、执行过程、运行原理、生命周期
JSP - 起源、执行过程、运行原理、生命周期
6 0
+关注
李名赫
博主从事的是物联网行业,目前在某知名智能家居科技公司担任家庭智能中心研发主管。欢迎交流!
147
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载