php源码安装

我是将下载好的软件包放到虚拟机 /home目录下,虚拟机是centos6.4

如果想了解nginx源码安装http://blog.csdn.net/zkg510168343/article/details/43703635

mysql源码安装 http://blog.csdn.net/zkg510168343/article/details/43284071

PHP安装前准备,软件包下载地址

libmcrypt包

http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.bz2/download

mhash

http://sourceforge.net/projects/mhash/files/mhash/0.9.9.9/mhash-0.9.9.9.tar.bz2/download

mcrypt

http://sourceforge.net/projects/mcrypt/files/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz/download

php

http://www.php.net

首先来安装几个源码包依赖:

tar -jxvf libmcrypt-2.5.8.tar.bz2   # 这个包是bz2的  使用-j参数解压

cd libmcrypt-2.5.8

./configure

make && make install

####################################################

tar -jxvf mhash-0.9.9.9.tar.bz2

cd mhash-0.9.9.9

./configure

make && make install

# 这两个包安装完成后要把动态链接库做一个软连接到/usr/lib,以为接下来的mcrypt依赖于这两个包

ln -s /usr/local/lib/libmcrypt* /usr/lib

ln -s /usr/local/lib/libmhash.* /usr/lib/

ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config

###########################################################

tar -zxvf mcrypt-2.6.8.tar.gz

cd mcrypt-2.6.8

./configure

make && make install

php安装

安装依赖:

yum –y install libxml2-devel curl-devel libpng-devel openldap-devel

tar -jxvf php-5.4.0.tar.bz2

cd php-5.4.0

./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql/ --with-zlib --enable-xml --disable-rpath --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --with-curl --with-curlwrappers --enable-fpm --enable-fastcgi --with-mcrypt --with-gd
--with-openssl --with-mhash --enable-sockets --with-ldap --with-ldap-sasl --with-xmlrpc -enable-zip --enable-soap

这一步会出现各种各样的问题,大多是因为缺少软件

首先预编译第一次提示了

configure: error: *** libmcrypt was not found

这个是因为环境变量的问题,gcc编译的时候根据自身定义的变量寻找相关函数库等文件,

libmcrypt也是刚安装的,在变量中没有定义出来,所以手动添加:

[[email protected] modules]# export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

再次编译,又一次出错

checking for cURL in default path... not found

configure: error: Please reinstall the libcurl distribution -

easy.h should be in /include/curl/

这个是curl的dev包没有安装, 解决方案:

yum -y install curl-devel

再次编译,报错:

If configure fails try --with-vpx-dir=<DIR>

If configure fails try --with-jpeg-dir=<DIR>

configure: error: png.h not found.

这个是因为libpng没有安装,于是我执行命令

yum install libpng-devel

再次编译,仍然报错

configure: error: Cannot find ldap.h

好吧缺少openldap库

yum install openldap-devel

继续编译,还是报错

configure: error: Cannot find ldap libraries in /usr/lib.

这个错误一般是在编译安装PHP的时候会出现这个提示。

解决方法如下:

cp -frp /usr/lib64/libldap* /usr/lib/

可能的原因是安装了64位的系统,在lib64下面有这个文件,可能在lib这文件夹里面没有,所以强制复制一次。

快要崩溃了,再一次编译,当出现thanks you using php界面,终于预编译通过了,这里其实每个人遇到的错误会不一样,这些是我编译遇到的问题

执行make && make install 感觉一切要结束的时候,问题又来了

提示错误:

/root/dev/php-5.4.0/sapi/cli/php: error while loading shared libraries:  libmysqlclient.so.18: cannot open shared object file: No such file or  directory

make: *** [ext/phar/phar.php] Error 127

网上找到的解决办法是

ln -s /usr/local/mysql/lib/libmysqlclient.so.18  /usr/lib/

照做后仍然报错,原因是该方法适用于32位系统,64位系统应使用下面的这行

ln -s /usr/local/mysql/lib/libmysqlclient.so.18  /usr/lib64/

再次make && make install

偶也PHP安装成功

到这里整个LNMP已经安装完成.下面我们就配置php和nginx能运行php网站:

首先为php创建配置文件:

cp php.ini-production /usr/local/php/php.ini # 如果是开发就复制php.ini-development

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

ln -s /usr/local/php/bin/php /usr/bin/

启动php-fpm

/usr/local/php/sbin/php-fpm

netstat -tunlp | grep php-fpm

php-fpm启动

配置nginx与php

找到这段,前面添加 index.php类型

location / {

root   html;

index  index.php index.htm index.html;

}

打开这段注释

location ~ \.php$ {

root           html;

fastcgi_pass   127.0.0.1:9000;

fastcgi_index  index.php;

fastcgi_param  SCRIPT_FILENAME  /usr/local/nginx/html/$fastcgi_script_name;
//这里目录就是web服务器站点代码存放目录

include        fastcgi_params;

}

保存后重启nginx service nginx restart

在/usr/local/nginx/html里添加  index.php文件

里面输入<?php echo phpinfo();?>

访问站点 192.168.2.151出现php配置信息,这样一个简单的站点算是部署完成,如果想在一台服务器上部署多个虚拟站点,阅读:http://blog.csdn.net/zkg510168343/article/details/42835109

当然nginx功能强大,这里只是一个开始

时间: 2024-10-27 08:10:09

php源码安装的相关文章

centos7.2源码安装openssl1.0.2

centos7.2默认是安装了opensll软件包的,但是部署个别服务时,由于版本太低.会影响服务的正常部署.只能使用源码安装提高openssl软件版本. 因为之前有openssl软件包,所以要先移除之前版本: 删除旧版本: yum remove -y openssl openssl-devel 源码安装openssl需要perl环境编译,如果没有perl环境还是需要安装: yum -y install perl perl-devel 现在新版本openssl: wget https://www

centos6.5 64 源码安装redis服务,建立可远程连接的redis数据库

安装环境:centos6.5 64位 使用的包:redis-2.8.19.tar.gz  tcl8.6.3-src.tar.gz 包的下载链接:http://downloads.sourceforge.net/tcl/tcl8.6.3-src.tar.gz http://download.redis.io/releases/redis-2.8.19.tar.gz 本次安装的目录/home/hadoop/redis为任意目录 代码实现: 1,安装需要的支持环境 su root cd /home/h

ubuntu php5.6源码安装

今天又花了一天时间装了php,感觉php的源码安装也挺麻烦的,整个过程各种报错. 下篇文章准备整合所有查找到的报错和解决方法. php和nginx一样,在安装前需要装一堆的依赖.有libmcrypt.mcrypt.mhash.其实远不止这三个包,在后面的configure和make中还会陆陆续续安装一些依赖. 1.安装libmcrypt.mcrypt.mhash(整个过程都在/usr/local/src/php目录下) #创建/usr/local/src/php目录并进入mkdir /usr/l

LinuxMint下的Orionode源码安装

1. Orionode介绍 Eclipse-orion是Eclipse项目下面的一个子项目,orion是一个在在线版的代码编辑环境.其介绍参考http://wiki.eclipse.org/Orion. Eclipse-orion是使用Java语言开发的, Orionode则是使用Node.js开发的一个简易版orion.关于orionode跟orion的特性差异请查考http://wiki.eclipse.org/Orion/Node/Getting_started. 2. Node.js和n

nsq 学习(一)源码安装nsq

1.源码安装nsq go get github.com/tools/godep go get github.com/bmizerany/assert godep get github.com/bitly/nsq/... godep执行之后,如果报错: godep: outdated Godeps missing source code This dependency list was created with an old version of godep. To work around thi

bash-scripts源码安装lamp(apache、php及部分扩展、mysql)

安装包版本:httpd-2.2.29.tar.gzzlib-1.2.8.tar.gzapr-util-1.5.4.tar.gzapr-1.5.1.tar.gzlibpng-1.6.17.tar.gzjpegsrc.v9a.tar.gzlibgd-gd-2.1.1.tar.gzphp-5.6.7.tar.gzfreetype-2.5.5.tar.gzlibmcrypt-2.5.8.tar.gzlibxml2-2.9.2.tar.gzmysql-5.6.23.tar.gz ======安装包下载网站

PHP-5.3.27源码安装及nginx-fastcgi配置

源码安装php cat /etc/redhat-release uname -rm wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo yum install -y zlib-devel libxml2-devel libjpeg-turbo-devel freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel opens

Python源码安装cx_Oracle

最近线上有个数据表一个月竟然没有数据,都没有监控,老大让我做一个监控,让Python写脚本监控oracle数据是否正常. 一.涉及软件包 1.cx_Oracle 下载地址:http://sourceforge.net/projects/cx-oracle/files/?source=navbar 我下载的是最新版的cx_Oracle-5.1.2.tar.gz 2.Oracle_client 使用cx_Oracle必须要安装Oracle_client端,或者你已经安装了Oracle数据库 下载地址

CentOS6.5源码安装MySQL5.6.35

接上一篇文章使用RPM包安装MySQL,确实很方便.但是安装后却不知道各文件保存在哪个文件夹下!尝试使用源码安装~本文主要参考:CentOS 6.4下编译安装MySQL 5.6.14 一.卸载旧版本 1.使用下面的命令检查是否安装有mysql [[email protected] tools]# rpm -qa|grep -i mysql 2.有的话就卸载 [[email protected] tools]# yum remove MySQL-server-5.6.35-1.el6.i686 [