linux 配置apache、mysql、php ——20150807
2015年8月7日
一部分:mysql
mysql 5.5.40安装
第二部分:apache(apache要安装在php前面。apache和mysql可以随意顺序)
1、
# tar zxvf httpd-2.2.11.tar.gz
# ./configure --prefix=/usr/local/apache2 --enable-dav --enable-modules=so【20150807是这个配置】
./configure --prefix=/usr/local/apache --enable-so【这个也行】
make
make install
一般出现这个-bash: make: command not found提示,是因为安装系统的时候使用的是最小化mini安装,系统没有安装make、vim等常用命令,直接yum安装下即可。
-------------------------------------------------------
解决方案:
yum -y install gcc automake autoconf libtool make
直接ssh运行即可,安装make。
启动Apache服务:
# /usr/local/apache2/bin/apachectl start
出现错误:
httpd: apr_sockaddr_info_get() failed for VM_74_204_centos
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
-------------------------------
解决方案:
在Apache的安装目录下的conf文件修改如下
(1) ServerName localhost:80
或者在 /etc/hosts 中填入自己的主机名称 bogon,如下:
(2)127.0.0.1 bogon
---------------------------------------------
【下面这个错误可以避免,apache支持php,就是php编译的时候,加个参数。apache安装的时候已经加了这个参数--enable-modules=so】
/usr/local/apache2/modules/libphp5.so: cannot open shared object file: No such file or directory
-------------------------------------------------
解决方案:Apache 安装目录http。conf文件增加这一行
LoadModule php5_module /usr/local/apache2/modules/libphp5.so
还是/usr/local/apache2/modules/libphp5.so: cannot open shared object file: No such file or directory 错误,那就先装php吧
第三部分:安装php
安装libxml2【一定要先安装这个】
方式一:
1 tar zxvf libxml2-2.6.32.tar.gz
2 cd libxml2-2.6.32
3 ./configure --prefix=/usr/local/libxml2
4 make
5 make install
方式二:【20150807采用的是这个方式】
yum install libxml2
yum install libxml2-devel -y
安装php
1、tar zvxf php-5.3.28.tar.gz
2、cd php-5.3.28
3、./configure --prefix=/usr/local/php --with-mysqli=/usr/bin/mysql_config --with-apxs2=/usr/local/apache2/bin/apxs --with-libxml-dir=/usr/local/libxml2
出现错误
configure: error: xml2-config not found. Please check your libxml2 installation.
------------------------------------
解决方案:http://www.cnblogs.com/happyhotty/articles/2539864.html
【检查是否安装了libxm包
[root@XKWB3403 php-5.3.8]# rpm -qa |grep libxml2
libxml2-2.6.26-2.1.12
libxml2-python-2.6.26-2.1.12
重新安装libxml2和libxml2-devel包
yum install libxml2
yum install libxml2-devel -y
安装完之后查找xml2-config文件是否存在
[root@XKWB3403 php-5.3.8]# find / -name "xml2-config"
/usr/bin/xml2-config
】
然后再重新 config
+--------------------------------------------------------------------+
| License: |
| This software is subject to the PHP License, available in this |
| distribution in the file LICENSE. By continuing this installation |
| process, you are bound by the terms of this license agreement. |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point. |
+--------------------------------------------------------------------+
Thank you for using PHP.
出现这个【而且只能出现这个,后面如果还有文字,就代表还有问题。有一次编译php没有加这个--with-libxml-dir=/usr/local/libxml2,就出现后面还有一堆文字,不算成功】,成功安装php
然后再
make make install
出现这个
[PEAR] Console_Getopt - installed: 1.3.1
warning: pear/PEAR requires package "pear/Structures_Graph" (recommended version 1.0.4)
warning: pear/PEAR requires package "pear/XML_Util" (recommended version 1.2.1)
[PEAR] PEAR - installed: 1.9.4
Wrote PEAR system config file at: /usr/local/php/etc/pear.conf
You may want to add: /usr/local/php/lib/php to your php.ini include_path
[PEAR] Structures_Graph- installed: 1.0.4
[PEAR] XML_Util - installed: 1.2.1
/usr/local/php-5.3.28/build/shtool install -c ext/phar/phar.phar /usr/local/php/bin
ln -s -f /usr/local/php/bin/phar.phar /usr/local/php/bin/phar
Installing PDO headers: /usr/local/php/include/php/ext/pdo/
安装成功了
---------------------------------------------------
最后 php链接php还是不成功。原因解决方案:
cp 一个php.ini 到 /usr/local/php/lib 【 cp /opt/php-5.3.28/php.ini-production /usr/local/php/lib/php.ini或者直接操作复制过去那个文件 】
vi /usr/local/php/lib/php.ini
找到这一行 extension=mysql.so【*5】
php。ini里面 去掉分号,加上面这个链接。重启Apache即可
./configure --with-php-config=/usr/local/bin/php-config
【如果不成功,目录之类的,请重新输入或者
updatedb
locate php-config
找到对应的,复制粘贴】
步骤大致是:
a、进入php目录下ext下mysql下
b、/usr/local/php/bin/phpize
c、./configure --with-php-config=/usr/local/bin/php-config
【如果./configure不成功,下面这种方式。】
(
ln -s /usr/lib64/mysql/libmysqlclient.a /usr/lib/libmysqlclient.a
ln -s /usr/lib64/mysql/libmysqlclient_r.a /usr/lib/libmysqlclient_r.a
ln -s /usr/lib64/mysql/libmysqlclient.so.16 /usr/lib/libmysqlclient.so【注意,这一台机器是16,去具体的目录查看一下】
)
参考网站:http://www.cnblogs.com/wangtao_20/archive/2011/03/07/1973621.html
--------------------------------------------------------
d、make 【./configure成功之后才有make】
e、make install
f、配置mysql.so 回到【*5】
--------------------------------------
以前的一些总结
2015年2月21日
说明:
1、安装apache+mysql+php,php总是最后装的,apache和mysql可以不分顺序。因为根据视频的那个源码包安装的时候,php是指定了目录的。指定了mysql和apache
2、apache中支持php,相当于apache中开启了php模块。然后php(其实是程序里面)开启了连接了数据库。
3、php里面开启例如zlib、mysql、xmlrpc、openssl 、gd库。在这个文件里面编辑vi /usr/local/php/etc/php.ini 添加即可【/usr/local/php是php按照的时候 --prefix的目录】
4、apache在windows的配置文件 路径在\Apache2.2\conf\httpd.conf linux在/usr/local/apache2/etc/httpd.conf 多了一个etc
5、添加别名 alias sta='/usr/local/apache2/bin/apachectl start'
-------------------------------------------------------------
今天的总结:
1、主页目录存放位置。在php.ini里面的两个相应位置修改成/home/www既可。
2、测试是否mysql链接正常的时候,如果是空白页,删掉第一个 面向过程的mysql链接测试,面向对象的就测试正常。当然,里面的数据库密码要修改成一样的,才能测试。
3、apache是否支持php。只要apache编译的时候,加上那个enable-so选项和php编译的时候有apxs选项。就会自动在 php.ini里面有 load apachephp5 module选项
如果没有的话,在网盘里面下载httpd.conf覆盖对应的【搜 httpd.conf】
4、添加扩展库 curl.so
情况二:已经安装了php,现在需要添加这个扩展
进入安装原php的源码目录,(如果删了,但是还有原来的压缩文件的话,重新解压就行)
cd ext/curl
phpize ./configure –with-curl=DIR (可以不写dir,如果你的curl安装时没有指定目录)
make
就会在PHPDIR/ext/curl/moudles/下生成curl.so的文件。
复制curl.so文件到extensions的配置目录,修改php.ini就好了
以上两种就是Linux下php扩展cURL的安装方法。
以前总结的添加扩展库的方法链接
http://www.cnblogs.com/bluewelkin/p/4296297.html
或http://blog.sina.com.cn/s/blog_6df9fbe30101ecx7.html
2015年0811总结
1、apache支持php 加入Load php5 module 那个模块 和 index.php .apache的配置文件 http.conf文件里面【php在mysql和apache 最后编译,加入编译选项--with-apxs2=/usr/local/apache2/bin/apxs就会自动加入 Load php5 这一条语句】
2、php支持mysql 加入 mysql.so文件。php文件的配置文件,我的是默认的 /usr/local/lib/php.ini[ 和下面的这一段话有区别 我的是lib]
楼主一开始修改的是 php编译后目录/lib/php.ini 这个文件,修改之后新增模块并不生效。后来才知道,前面这个是默认(编译时候不指定)的扩展配置目录,如果编译的时候指定了php.ini的目录,以后都需要修改指定目录下的php.ini,例如楼主的是 php编译后目录/etc/php.ini 。
加入其它模块,类似,如curl.so
apache 找php【apache的配置文件 在/usr/local/apache2/conf下】,php 找php的配置文件【/usr/local/php/lib/php.ini】
2015年8月13号
1、测试配置文件是否正常 /usr/local/php/bin/php -v
2、测试加载了哪些模块 /usr/local/php/bin/php -m
./configure --prefix=/usr/local/php --with-mysqli=/usr/bin/mysql_config --with-apxs2=/usr/local/apache2/bin/apxs --with-libxml-dir=/usr/local/libxml2
--with-curl=/usr/local/curl
添加了curl模块,都不需要额外添加了,编译这个就ok 2015年0813
3、php的加载配置文件为 /usr/local/php/lib/php.ini 。可以在浏览器里面看到或编译安装的时候,make install 有显示。
这次就没有,直接拷贝了一个【为什么没有呢,默认的是php编译后目录/lib/php.ini 】
linux 配置apache、mysql、php ——20150807的更多相关文章
- linux 配置 Apache mysql php最新版
第一部分:安装mysql 官方下载 mysql5.6.19 64位的rpm格式文件 0.rpm 四个mysql5.6.19 卸载默认的mysql yum -y remove mysql-libs-* ...
- Mac OS X 配置 Apache+Mysql+PHP 详细教程
网上的教程已经有很多,这里简洁的记录一下.以 Mac OS X Mavericks 10.9.X 为例. 先附上如何进入指定目录文件夹,按键盘 Command + Shift + G ,然后输入指定目 ...
- CentOS 配置Apache+Mysql+PHP (yum)与卸载
一.安装Apache2 #yum -y install httpd 安装配置完成,启动httpd服务#service httpd start 二.安装Mysql1.安装mysql#yum -y ins ...
- linux 配置Apache 、PHP
1. 安装 Apache 安装apache,首先要使用管理员权限,如果如法获取请联系您的管理员. centos: yum install httpd httpd-devel 2. 安装PHP 同样也需 ...
- 最简单的Linux下apache+mysql+php安装
转载:http://www.jb51.net/article/29843.htm ubuntu下需要先更新系统后 流程笔记: 1.打开终端,输入“sudo apt-get install apache ...
- centos6.5上配置apache + mysql + php4.4.9 + eaccelerator-0.9.5 + postgresql-8.3.13 备忘
1.apache + mysql 直接利用 yum 安装 yum -y install httpd httpd-devel mysql mysql-server httpd-manual mod_pe ...
- Linux配置apache等系列
1.Linux下安装.配置PHP环境 2.ubuntu12.0.4安装apache, php ,mysql 3 CentOs中mysql的安装与配置
- centos linux服务器apache+mysql环境访问慢优化方法
查找软件安装目录:find / -name 软件名称 一.优化apache配置增加MaxClients的值 默认情况下,2.0及以上apache版本MaxClients的值为256,对于中大型应用访问 ...
- linux+jre+apache+mysql+tomcat调优
一.不再为Apache进程淤积.耗尽内存而困扰 0. /etc/my.cnf,在mysqld那一段加上如下一行: log-slow-queries=queries-slow.log 重启MySQL 酌 ...
随机推荐
- 开放API端口SIGN算法详细设计
开放API端口SIGN算法详细设计 前言 在app开放接口api的设计中,避免不了的就是安全性问题,因为大多数接口涉及到用户的个人信息以及一些敏感的数据,所以对这些接口需要进行身份的认证,那么这就需要 ...
- log4j 输入不同日志文件
log4j的强大功能无可置疑,但实际应用中免不了遇到某个功能需要输出独立的日志文件的情况,怎样才能把所需的内容从原有日志中分离,形成单独的日志文件呢?其实只要在现有的log4j基础上稍加配置即可轻松实 ...
- yii2中判断数据表是否存在数据库中(原创)
分为两步: 第一步,找出数据库中所有表名,表名得到的是二维数组. 第二步,判断表名是否存在二维数组中 下面就贴我的代码咯. $table_name =‘table’; $juge = $handle- ...
- AC日记——pigs poj 1149
POJ - 1149 思路: 最大流: 代码: #include <cstdio> #include <cstring> #include <iostream> # ...
- [libgdx游戏开发教程]使用Libgdx进行游戏开发(3)-给游戏添加一些控制功能
每个游戏中都有一些只有程序员自己才知道的控制功能,比如增加金钱,满血复活,无视防御,不死等等. 都是为了方便自己调试而在测试阶段使用的功能. 正如上一章提到的:我们也需要加些只有程序员才知道的控制功能 ...
- (十五)mysql中间件MyCAT实现
1)拓扑如下和实现目标 写操作:都在master 读操作:在slave1上 当master1挂了,写操作自动切换到master2上 当master2挂了,写操作自动切换到master1上 2)Myca ...
- [UML] 如何找参与者、找用例
如何找参与者 1.谁会来使用这个系统? 2.谁会来安装这个系统? 3.谁会来启动这个系统? 4.谁会来维护这个系统? 5.谁会来关闭这个系统? 6.哪些系统会来使用这个系统? 7.谁会从这个系统获取信 ...
- fmod()函数和modf()函数
最近从博客上看到了一个fmod函数,结果又蹦出来一个modf函数 fmod()函数: 头文件:#include<math.h> C库函数... fmod()用来对浮点数进行取模(求余),原 ...
- 百度MapAPI之地理编码
地理编码:将具体地址数据转换为对应坐标点经纬度功能 大致思路: 1.从数据库取得具体地理位置 2.将地址作为参数访问API接口,获取返回数据 3.处理response数据并将经度(lng.longit ...
- []ARC098
咕咕咕 C:普及组难度的题 D:给定$a_{1\cdots n}$,求有多少$1\leq l\leq r\leq n$满足$x_l+\cdots+x_r=x_l\text^\cdots\text^x_ ...