一、到官网下载最新的php5.4.13.tar.gz
在这里弱弱的提醒一句---自PHP5.3以后都内置了php-fpm,不需要另行安装php-fpm,即php-cgi管理程序
二、tar zxvf php5.4.13.tar.gz
三、cd php5.4.13
四、./buildconf --force如果报以下错误You need autoconf version 2.59 or higher
则执行先卸载原先的autoconf:
apt-get --purge remove autoconf
然后
apt-get autoremove autoconf
然后直接安装
apt-get install autoconf
五、开始编译安装配置PHP5.4.13
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-curl --with-pear --with-gd --with-jpeg-dir --with-png-dir --with-zlib --with-xpm-dir --with-freetype-dir --with-t1lib --with-mcrypt --with-mhash --with-mysql --with-mysqli --enable-pdo --with-pdo-mysql --with-openssl --with-xmlrpc --with-xsl --with-gettext --with-fpm-user=www-data --with-fpm-group=www-data --enable-fpm --enable-exif --enable-wddx --enable-zip --enable-bcmath -with-bz2 --enable-calendar --enable-ftp --enable-mbstring --enable-soap --enable-sockets --enable-shmop --enable-dba --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-debug --enable-maintainer-zts --enable-embed
make && make install
当中遇到的错误和解决方法如下:
1) Configure: error: xml2-config not found. Please check your libxml2 installation.
Solutions :
# aptitude install libxml2-dev
2) Checking for pkg-config… /usr/bin/pkg-config
configure: error: Cannot find OpenSSL’s <evp.h> or <hmac.h>
Solutions :
sudo apt-get install openssl-dev
sudo apt-get install libcurl3-openssl-dev
3) Configure: error: Please reinstall the BZip2 distribution
Solutions :
apt-get install libbz2-dev
4) Configure: error: Please reinstall the libcurl distribution -
easy.h should be in /include/curl/
Solutions :
apt-get install curl
apt-get install libcurl3
apt-get install libcurl4-gnutls-dev(For Ubuntu)
5) Configure: error: libjpeg.(also) not found.
Solutions :
apt-get install libjpeg-dev
6) Configure: error: libpng.(also) not found.
Solutions :
apt-get install libpng-dev
7) Configure: error: freetype.h not found.
Solutions :
8) Configure: error: Unable to locate gmp.h
Solutions :
yum install gmp-devel
9) Configure: error: Cannot find MySQL header files under /usr.
Note that the MySQL client library is not bundled anymore!
Solutions :
yum install mysql-devel (For Redhat & Fedora)
# apt-get install libmysql++-dev (For Ubuntu)
10) Configure: error: Please reinstall the ncurses distribution
Solutions :
yum install ncurses ncurses-devel
11) Checking for unixODBC support… configure: error: ODBC header file ‘/usr/include/sqlext.h’ not found!
Solutions :
yum install unixODBC-devel
12) Configure: error: Cannot find pspell
Solutions :
yum install pspell-devel
13) configure: error: mcrypt.h not found. Please reinstall libmcrypt.
Solutions :
yum install libmcrypt libmcrypt-devel (For Redhat & Fedora)
# apt-get install libmcrypt-dev
14) Configure: error: snmp.h not found. Check your SNMP installation.
Solutions :
15)configure: error: libXpm.(a|so)not found.
apt-get install libxpm-dev
有可能还会出现这个错误,那么继续
cd /usr/lib/
ln -s /usr/lib/x86_64-linux-gnu/libXpm.a .
ln -s /usr/lib/x86_64-linux-gnu/libXpm.so .
ln -s /usr/lib/x86_64-linux-gnu/libXpm.so.4.
ln -s /usr/lib/x86_64-linux-gnu/libXpm.so.4.11.0.
至此php5.4.13应该安装成功,接下来进行配置
将php5所在的目录也加到bash的PATH中去:
echo 'if [ -d "/usr/local/php/bin" ] && [ -d "/usr/local/php/sbin" ]; then
PATH="$PATH:/usr/local/php/bin:/usr/local/php/sbin"
fi' >> /etc/bash.bashrc
当前会话也加上:
export PATH="$PATH:/usr/local/php/bin:/usr/local/php/sbin"
准备PHP5的日志文件目录:
mkdir /var/log/php-fpm
chown -R www-data:www-data /var/log/php-fpm
准备PHP的配置文件:
cp -f php.ini-production /usr/local/php/etc/php.ini
chmod 644 /usr/local/php/etc/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
注意: PHP5的配置文件在/usr/local/php/etc/php.ini, php-fpm的配置文件在/usr/local/php/etc/php-fpm.conf.
设置php-fpm启动管理文件,并让PHP在ubuntu启动时自动运行(下面地sapi是PHP5.4.0安装包中的):
cp -f sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod 755 /etc/init.d/php-fpm
update-rc.d -f php-fpm defaults
设置PHP的自动日志分割和压缩: vi /etc/logrotate.d/php-fpm
加入下面的内容保存退出:
/var/log/php-fpm/*.log {
weekly
missingok
rotate 52
compress
delaycompress
notifempty
create 640 www-data www-data
sharedscripts
postrotate
[ ! -f /usr/local/php /var/run/php-fpm.pid ] || kill -USR1 `cat /usr/local/php/ /var/run/php-fpm.pid`
endscript
}
配置php-fpm和nginx
php-fpm:
vi /usr/local/php/etc/php-fpm.conf
主要是下面的参数需要改下:
- pid = run/php-fpm.pid //这个必去将前面的;注释去掉(一开始没去掉结果出502错误)
- error_log = log/php-fpm.log
- log_level = notice
- ;emergency_restart_threshold = 0
- ;emergency_restart_interval = 0
- ;process_control_timeout = 0
- ;daemonize = yes
- [www]
- ;prefix = /path/to/pools/$pool
- listen = 127.0.0.1:9000
- ; listen.backlog = -1
- listen.allowed_clients = 127.0.0.1
- listen.owner = www-data
- listen.group = www-data
- listen.mode = 0666
- user = www-data
- group = www-data
- pm = dynamic
- pm.max_children = 50
- pm.start_servers = 20
- pm.min_spare_servers = 5
- pm.max_spare_servers = 35
- pm.max_requests = 500
然后配置nginx:
vi /etc/nginx/nginx.conf
user nginx;
worker_processes 2;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events
{
use epoll;
worker_connections 1024;
}
http
{
include mime.types;
default_type application/octet-stream;
#charset gb2312;
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 8M;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300s;
fastcgi_send_timeout 300s;
fastcgi_read_timeout 300s;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;
#limit_zone crawler $binary_remote_addr 10m;
server
{
listen 80; #/*监听端口*/
server_name localhost; #/*服务器名称*/
index index.html index.htm index.php; #/*缺省主页名称*/
root /var/www; #/*网站根目录,也可以采用下面内容*/
#也可以采用相对路径,下面注释部分*/
#location / {
# root html;
# index index.html index.htm;
# }
#limit_conn crawler 20;
#通过FastCGI方式支持PHP,php页面由fastcgi代理处理,这也是反向代理的一个应用,这里可以是jsp/asp等脚本。
location ~ .*\.(php|php5)?$
{
include /etc/nginx/fastcgi_params;#为FastCGI模块设置了基本的环境变量
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/$fastcgi_script_name;
#include fcgi.conf; #/*fastcgi配置文件,修改为以下内容*/
}
#对于某一类型的文件,设置过期时间,静态的页面通常设置长一点。
#静态文件,nginx自己处理
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css)$
{
expires 30d;
}
#日志的格式
log_format access '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $http_x_forwarded_for';
access_log access_log /usr/local/ngxin/logs/access.log access;
}
}
然后保存退出,重启fpm和nginx
/etc/init.d/php-fpm restart
/etc/init.d/nginx restart
安装完成:
root@Cyrec-desktop:~# php-fpm -v
PHP 5.4.0 (fpm-fcgi) (built: Mar 12 2012 18:13:13) (DEBUG)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
一些参考资料:
http://www.cslog.cn/Content/ubuntu-10-04-nginx-0-8-52-php-fpm-5-3-3-apc-mysql-i/
http://www.laruence.com/2009/07/28/1030.html
http://www.frostsky.com/2011/11/php-configure-error/
http://letle.iteye.com/blog/625728
http://kangxiaowei.com/archives/2398.html
http://wenku.baidu.com/view/2ae270e9551810a6f52486ea.html
分享到:
相关推荐
描述中同样提到 "php-5.4.13-Win32-VC9-x86",这表明提供的内容是与该PHP版本相关的文件,用于在Windows环境下的32位系统上运行。 标签 "php-5.4.13" 进一步确认了这个压缩包的核心内容是关于PHP 5.4.13的。 在...
php5.4.13源代码
本文将聚焦于PHP的一个特定版本——PHP 5.4.13,通过对其深入剖析,帮助读者理解其核心特性和改进,以及如何在实际开发中充分利用这些特性。 PHP 5.4.13是PHP 5.x系列中的一个稳定版本,发布于2013年。这个版本包含...
PHP是一种新型的CGI程序编写语言,易学易用,运行速度快,可以方便快捷地编写出功能强大,运行速度快,并可同时运行于 Windows、Unix、Linux平台的Web后台程序,内置了对文件上传、密码认证、Cookies操作、邮件收发、动态...
标题 "ngins-1. pcre php" 暗示我们关注的是一个关于Nginx...综上所述,这个主题涵盖了Web服务器Nginx的配置、PHP服务器端脚本语言的编译安装以及PCRE库在两者之间的应用,这些都是Web开发者和系统管理员必备的知识点。
php-5.4.42.tar.bz2 for linux php
- **使用包管理器**:在Ubuntu/Debian系统上使用`apt-get install php5.4`,在CentOS/RHEL系统上使用`yum install php54`。 - **源码编译安装**:下载`php-5.4.13.tar.bz2`,解压后按照`./configure --with-config...
本文将详细介绍如何在CentOS 7上自动升级内核至5.4.13版本,基于提供的资源,即`update_kernel.sh`脚本和`kernel`目录。 首先,CentOS 7默认使用的内核版本为3.10,而5.4.13是一个较新的稳定版内核,提供了更多的...
综上,Hibernate 5.4.13.Final版本在保持易用性的同时,强化了性能和兼容性,是现代Java企业级应用开发的得力工具。熟练掌握Hibernate,能够极大地提升开发效率,降低维护成本,为项目的成功奠定坚实基础。
5.4.13最小公倍数(1).pdf
这个错误可能发生在配置二级域名的时候,系统会提示你绑定了后台管理地址,以后只能通过这个特定的二级域名访问后台。配置信息会被保存在系统的配置文件中,路径通常为“/caches/configs/system.php”。在这个文件中...
说明:内核版本5.4.13,真实有效!
- 手机端访问:系统支持移动设备,员工可以在手机上查看完整的通讯录,无需依赖电脑,实现随时随地查询。 - 联系方式展示:不仅包含电话号码,还可能包括电子邮件、办公地址等多元化的联系方式。 - 搜索功能:...
『软件简介』 ... PHP 5.4.13 新型的CGI程序编写语言,易学易用、速度快、跨平台。 apache 2.4.4 服务器 MySQL 5.3.30 数据库 phpMyadmin 3.5.7 MySQL管理器 Zend optimizer 7.0.0 php优化器
PHP 5.4.13版本引入了新的语法特性,如命名空间和 Traits,增强了错误处理,以及提升了执行效率。 **编译安装过程** 编译安装LAMP组件能提供更高的定制性和优化选项,但步骤相对复杂,通常包括以下阶段: 1. **...
《Android平台上的性能测试工具:Geekbench 5.4.1与3Dmark v2.2.4805详解》 在Android系统的世界里,开发者和用户常常需要了解设备的性能表现,以评估其运行游戏或处理复杂任务的能力。这时,性能测试工具就显得尤...
Hibernate 核心包,源码,文档,免费下载 Hibernate 是一个开放源代码的对象关系映射框架, 它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系, 是一个全自动的 orm 框架,hibernate 可以自动...
在本文中,我们将详细探讨如何在CentOS 6.3环境下安装PHP的xcache扩展模块。xcache是一款高效的PHP缓存和优化器,它能够显著提高PHP应用的性能,通过缓存编译后的PHP代码来减少CPU负载和内存消耗。 首先,确保你的...
PHP 5.4.13 新型的CGI程序编写语言,易学易用、速度快、跨平台。 PHP 5.3.23 新型的CGI程序编写语言,易学易用、速度快、跨平台。 Apache 2.4.4 最流行的HTTP服务器软件,快速、可靠、开源。 MySQL 5.5.30 执行...