`

CentOS 编译安装 Nginx 1.2 + PHP 5.3.14 + APC 3.1.9 + php-memcached + php-redis + php

 
阅读更多

CentOS 编译安装 Nginx 1.2 + PHP 5.3.14 + APC 3.1.9 + php-memcached + php-redis + php-mcrypt + php-mhash

 

参考资料

*************************************************************************

CentOS 6.0 x64编译LNMP环境

    http://blog.renhao.org/2011/09/centos-6-x64-compile-lnmp-environment/

CentOS 5.6(X64)下编译安装LNMP平台(Nginx1.0+PHP5.3.6+Mysql5.5.11)

    http://www.mike.org.cn/articles/centos56-x64-compile-install-lemp/6/

php安装加速扩展 APC 详解  

    http://leepiao.blog.163.com/blog/static/48503130201121811722907/

centos下nginx+postgresql+php+memcached+apc安装与配置

    http://j3j5.com/post-122.html

CentOS-5.2-x86_64(AMD)编译安装PHP小记

    http://hi.baidu.com/mcspring/blog/item/5cf6c513080a832bdd5401ca.html

CentOS下编译安装lighttpd和PHP(vps)

    http://www.coder4.com/archives/1069

CentOS 6.2编译安装Nginx1.0.12+MySQL5.5.21+PHP5.3.10

    http://www.osyunwei.com/archives/2708.html

CentOS 5.6(X64)下编译安装LNMP平台(Nginx1.0.4+PHP5.3.6+Mysql5.5.12)

    http://www.xker.com/page/e2011/0620/101603.html

CentOS 6.0(X64)下编译安装LNMP平台( Nginx1.0.10 + PHP5.3.8 + Mysql5.5.18 )

    http://www.cnblogs.com/vicowong/archive/2011/12/01/2116212.html

ldconfig命令作用

    http://wangqiaowqo.iteye.com/blog/1283887

*************************************************************************

 

软件列表

*************************************************************************

wget xxxxx -O xxxxx

 

APC-3.1.9.tgz

http://pecl.php.net/get/APC-3.1.9.tgz

 

cmake-2.8.5.tar.gz

http://www.cmake.org/files/v2.8/cmake-2.8.5.tar.gz

 

libiconv-1.13.1.tar.gz

http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz

 

libmcrypt-2.5.8.tar.gz

http://downloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz?modtime=1171868460&big_mirror=0

 

libmemcached-1.0.8.tar.gz

https://launchpad.net/libmemcached/1.0/1.0.8/+download/libmemcached-1.0.8.tar.gz

 

mcrypt-2.6.8.tar.gz

http://downloads.sourceforge.net/mcrypt/mcrypt-2.6.8.tar.gz?modtime=1194463373&big_mirror=0

 

memcached-2.0.1.tgz php-memcached扩展模块

http://pecl.php.net/get/memcached-2.0.1.tgz 

 

mhash-0.9.9.9.tar.gz

http://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz?modtime=1175740843&big_mirror=0

 

nginx-1.2.0.tar.gz

http://nginx.org/download/nginx-1.2.0.tar.gz

 

php-redis.tar.gz

https://github.com/nicolasff/phpredis/tarball/master

 

pcre-8.12.tar.gz

http://lnamp-web-server.googlecode.com/files/pcre-8.12.tar.gz

 

php-5.3.14.tar.gz

http://www.php.net/get/php-5.3.14.tar.gz/from/a/mirror

*************************************************************************

 

0. mkdir -p /home/atlantis/app_software

   cd /home/atlantis/app_software

 

1.

yum install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel  ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel libtool  libtool-libs libevent-devel libevent openldap openldap-devel nss_ldap openldap-clients openldap-servers libtool-ltdl libtool-ltdl-devel bison cloog-ppl ppl

yum install libmemcached-devel gcc44 gcc44-c++ libstdc++44-devel

 

 libevent-dev cloog-ppl

 

 

2. 安装CMake

tar zxvf cmake-2.8.5.tar.gz

cd cmake-2.8.5

./configure --prefix=/usr

make

make install

cd ..

 

3. 安装libiconv库

tar zxvf libiconv-1.13.1.tar.gz

cd libiconv-1.13.1/

./configure --prefix=/usr/local

make

make install

cd ..

 

4. 安装libmcrypt库

tar zxvf libmcrypt-2.5.8.tar.gz

cd libmcrypt-2.5.8

./configure

make

make install

/sbin/ldconfig

 

cd libltdl/

./configure --enable-ltdl-install

make

make install

cd ../../

 

5. 接下来我们要建立libmcrypt库的软链接:

 

#64位系统使用

 

ln -sf /usr/local/lib/libmcrypt.la /usr/lib64/libmcrypt.la

ln -sf /usr/local/lib/libmcrypt.so /usr/lib64/libmcrypt.so

ln -sf /usr/local/lib/libmcrypt.so.4 /usr/lib64/libmcrypt.so.4

ln -sf /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib64/libmcrypt.so.4.4.8

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

ln -sf /usr/local/lib/libiconv.so.2 /usr/lib64/libiconv.so.2

ldconfig

 

#32位系统使用

 

ln -sf /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la

ln -sf /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so

ln -sf /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4

ln -sf /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8

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

ln -sf /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2

ldconfig

 

 

6. 安装mhash

tar zxvf mhash-0.9.9.9.tar.gz

cd mhash-0.9.9.9

./configure

make

make install

cd ..

 

建立libmhash相关的软链接:

 

#64位系统使用

ln -sf /usr/local/lib/libmhash.a /usr/lib64/libmhash.a

ln -sf /usr/local/lib/libmhash.la /usr/lib64/libmhash.la

ln -sf /usr/local/lib/libmhash.so /usr/lib64/libmhash.so

ln -sf /usr/local/lib/libmhash.so.2 /usr/lib64/libmhash.so.2

ln -sf /usr/local/lib/libmhash.so.2.0.1 /usr/lib64/libmhash.so.2.0.1

ldconfig

 

#32位系统使用

ln -sf /usr/local/lib/libmhash.a /usr/lib/libmhash.a

ln -sf /usr/local/lib/libmhash.la /usr/lib/libmhash.la

ln -sf /usr/local/lib/libmhash.so /usr/lib/libmhash.so

ln -sf /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2

ln -sf /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1

ldconfig

 

7. 安装mcrypt

tar zxvf mcrypt-2.6.8.tar.gz

cd mcrypt-2.6.8/

/sbin/ldconfig

./configure

make

make install

cd ..

 

8. 安装pcre

tar zxvf pcre-8.12.tar.gz

cd pcre-8.12/

./configure

make

make install

 

 

===========================

9. 编译PHP

   PHP 5.3.x         [已安装]

   php-fpm           [已安装]

   php-memcached     [已安装] 

   php-apc           [已安装]

   php-redis         [已安装]

   Memcached Server  [未安装]

   Redis     Server  [未安装]

 

   PHP      启动脚本 [未完成]

   Nginx    启动脚本 [未完成]

   Memcached启动脚本 [未完成]

   Redis    启动脚本 [未完成]

 

首先我们再做几个软链接,这些软链接只是64位系统需要,32位系统不需要做:

 

ln -s /usr/lib64/libjpeg.so /usr/lib/libjpeg.so

ln -s /usr/lib64/libldap.so /usr/lib/libldap.so

ln -s /usr/lib64/libpng.so /usr/lib/libpng.so

 

#编译 PHP

tar xvf php-5.3.8.tar.gz

cd php-5.3.8

./configure --prefix=/usr/local/bk/php --with-config-file-path=/usr/local/bk/php/etc --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl --with-xmlrpc --enable-zip --enable-soap --without-pear

make ZEND_EXTRA_LIBS='-liconv'

make install

 

#创建PHP的配置文件

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

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

 

wget http://pear.php.net/go-pear.phar

/usr/local/bk/php/bin/php go-pear.phar

 

yum install libmemcached-devel gcc44 gcc44-c++ libstdc++44-devel

 

 libevent-dev cloog-ppl

 

#编译 libmemcached

tar zxf libmemcached-1.0.8.tar.gz

cd libmemcached-1.0.8

./configure --prefix=/usr/local/bk/libmemcached --with-memcached

make

make install

 

#编译 php-memcached

tar zxf memcached-2.0.1.tgz

cd memcached-2.0.1

/usr/local/bk/php/bin/phpize

./configure --enable-memcached --with-php-config=/usr/local/bk/php/bin/php-config --with-libmemcached-dir=/usr/local/bk/libmemcached

make

make install

 

vi /usr/local/bk/php/lib/php.ini

#加入 extension=memcached.so

 

mkdir -p /usr/local/bk/php/logs

vim /usr/local/bk/php/etc/php-fpm.conf

/*******

pid = /usr/local/bk/php/logs/php-fpm.pid

error_log = /usr/local/bk/php/logs/php-fpm.log

log_level = notice

*******/

 

#编译 APC插件

tar zxvf APC-3.1.9.tgz

cd APC-3.1.9

/usr/local/bk/php/bin/phpize

./configure --enable-apc --enable-apc-mmap --with-php-config=/usr/local/bk/php/bin/php-config

make

make install

 

vi /usr/local/bk/php/lib/php.ini

#加入

[apc]

extension=apc.so

 

===========================

参考

./libmemcached-1.0/memcached.h:46:27: error: tr1/cinttypes: No such file or directory

make[1]: *** [libmemcached/csl/libmemcached_libmemcached_la-context.lo] エラー 1

make[1]: ディレクトリ `/usr/local/src/memcached/libmemcached-1.0.8' から出ます

make: *** [all] エラー 2

</pre>

 

 

=== 対策 ===

1) 1.0.4 までならエラーは出ないので、それを使う。

 

2) gcc44 を入れる。

 

# yum install gcc44 gcc44-c++ libstdc++44-devel

 

 

# export CC=/usr/bin/gcc44 or export CC=/usr/bin/gcc

# export CXX=/usr/bin/g++44

===========================

10. 编译Nginx

mkdir -p /usr/local/bk/www

tar xvf nginx-1.2.0.tar.gz

cd nginx-1.2.0

./configure --prefix=/usr/local/bk/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre

make

make install

 

vi /usr/local/bk/nginx/conf/nginx.conf

# 修改

# user nobody;

# worker_processes 32;

# 检测 /usr/local/bk/nginx/sbin/nginx -t

server {

    listen 80;

    server_name localhost;

    rewrite_log on;

    #rewrite ^/(([0-9]+\.)+[0-9]+)/ /$1/www/index.php last;

    location / {

        root html;

        index index.html index.htm index.php;

        autoindex on;

    }

    location ~ \.php$ {

        root html;

        fastcgi_pass 127.0.0.1:9000;

        fastcgi_index index.php;

        fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;

        include fastcgi_params;

    } 

}

#

 

 

# /usr/local/bk/php/sbin/php-fpm

# /usr/local/bk/nginx/sbin/nginx

# killall nginx

# killall php-fpm

 

#编译 php-redis 扩展

cd phpredis

/usr/local/bk/php/bin/phpize

./configure --with-php-config=/usr/local/bk/php/bin/php-config

make

make install

vi /usr/local/bk/php/etc/php.ini

#加入 extentsion=redis.so

 

# killall nginx

# killall php-fpm

# /usr/local/bk/php/sbin/php-fpm

# /usr/local/bk/nginx/sbin/nginx

 

 

 

 

 

 

分享到:
评论
1 楼 yzhkpli 2012-07-12  
写的很好。就是没有用sohosin安全组件啊。加上就好了。

相关推荐

    CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14 软件包

    nginx-1.6.0.tar.gz mysql-5.6.19.tar.gz php-5.5.14.tar.gz pcre-8.35.tar.gz openssl-1.0.1h.tar.gz ...安装ZIBBIX Nginx1.6.0+MySQL5.6.19+PHP5.5.14 软件包 以上软件包使用WinSCP工具上传到/usr/local/src目录

    CentOS 6.2编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.13

    CentOS 6.2编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.13+Zend Guard Loader+WordPress-3.3.2中文版.pdf

    centos系统编译安装nginx+php环境另加独立mysql教程.docx

    CentOS系统编译安装Nginx+PHP环境另加独立MySQL教程 本教程将指导您如何在CentOS系统上编译安装Nginx+PHP环境,并且另外安装独立的MySQL数据库服务器。 知识点1:安装MySQL 在后端服务器(IP:192.168.10.5)上...

    CentOS 7.3.1611编译安装Nginx1.10.3+MySQL5.7.16+PHP7.1.2

    在本教程中,我们将深入探讨如何在CentOS 7.3.1611操作系统上编译安装Nginx 1.10.3、MySQL 5.7.16和PHP 7.1.2。这个过程对于那些希望自定义安装配置或需要最新版本的开发者来说非常有用。首先,让我们逐一了解每个...

    centos下安装nginx+php+mysql

    1. **下载并解压 Nginx 安装包**:下载对应的 Nginx 安装包,并使用 `tar -zxvf nginx-1.2.tar.gz` 命令解压。 2. **进入解压目录**:使用 `cd Downloads/nginx-1.6.3` 进入解压后的目录。 3. **配置 Nginx**:运行 ...

    CentOS7 自动化搭建Nginx+PHP7+Mysql+Docker+Docker-Compose Shell脚本

    CentOS7 自动化搭建Nginx+PHP7+Mysql+Docker+Docker-Compose Shell脚本,Docker version 18.06.1-ce,docker-compose version 1.22.0

    CentOS6.5+mysql+nginx+php+memcached安装指南

    Windows8上安装虚拟机VirtualBox,然后新建虚拟电脑,搭建CentOS6.5 + mysql + nginx + php + memcached平台环境,部署网站。文档中记录了部分FAQ。

    CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14

    ### CentOS 7.0 编译安装 Nginx1.6.0 + MySQL5.6.19 + PHP5.5.14 #### 一、环境准备与配置 在开始部署 LNMP(Linux+Nginx+MySQL+PHP)环境之前,首先需要对 CentOS 7.0 系统进行必要的环境配置。 **1. 配置防火墙...

    Centos_6.3_编译安装Nginx+php+Mysql

    使用yum安装编译工具和库文件,这些包括但不限于make、apr、autoconf、automake、curl-devel、gcc、gcc-c++、zlib-devel、openssl-devel、pcre-devel、gd、libjpeg、libpng、libxml2-devel、mpfr、cpp、glib、...

    CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14教程

    ### CentOS 7.0 编译安装 Nginx1.6.0 + MySQL5.6.19 + PHP5.5.14 教程 #### 一、配置防火墙,开启80端口、3306端口 在进行软件安装前,确保服务器的防火墙配置正确至关重要。CentOS 7.0 默认使用的是 firewall,但...

    centos下安装配置nginx+mysql+php环境

    ### CentOS 下安装配置 Nginx + MySQL + PHP 环境 #### 一、安装 MySQL 在 CentOS 下安装 MySQL 的过程主要包括用户与用户组的创建、配置安装路径、编译安装以及配置 MySQL 服务等步骤。 ##### 1.1 建立相关用户...

    CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14.docx

    在本教程中,我们将详细介绍如何在CentOS 7.0上编译安装Nginx 1.6.0、MySQL 5.6.19和PHP 5.5.14。这个过程涉及到多个步骤,包括环境配置、依赖库安装、源代码编译以及服务配置。以下是详细的步骤: 1. **系统环境...

    CentOS 安装 PHP5.5+Redis+XDebug+Nginx+MySQL全纪录

    总结来说,本文涉及的知识点包括CentOS服务器的基础环境准备、PHP及其常用扩展的安装和配置、Redis数据库的安装和配置、PHP扩展PHPRedis的安装和配置、XDebug的安装和配置以及Nginx和MySQL的基本安装。这些知识是...

    centos源码安装php-8.1.1+phpredis-4.2.0

    CentOS 源码安装 PHP 8.1.1 + PHPRedis 4.2.0 在本文中,我们将详细介绍如何在 CentOS 操作系统上从源码安装 PHP 8.1.1 和 PHPRedis 4.2.0。 安装依赖项 在安装 PHP 之前,我们需要安装一些依赖项。使用以下命令...

    compat-libstdc++-33-3.2.3-47.3.i386.rpm Centos7 安装oracle 所需软件包

    compat-libstdc++-33-3.2.3-47.3.i386.rpm Centos7 安装oracle 所需软件包

    centos 6.0最简化编译安装Nginx+Mysql+PHP+Zend

    ### CentOS 6.0 最简化编译安装 Nginx+Mysql+PHP+Zend 在IT行业,尤其是网站开发与管理领域,搭建一个稳定、高效的服务环境是至关重要的。CentOS 6.0作为一款广泛使用的Linux发行版,提供了丰富的功能和稳定性,...

    CentOS系统安装配置Nginx+keepalived实现负载均衡

    CentOS系统安装配置Nginx+keepalived实现负载均衡 本文将详细介绍CentOS系统安装配置Nginx+keepalived实现负载均衡的步骤和配置过程。通过本文,读者将了解如何使用Nginx和keepalived来实现高可靠性的负载均衡架构...

    CentOS7下源码编译配置Apache2.4+MySQL5.6+PHP71

    在本文中,我们将深入探讨如何在CentOS 7操作系统上通过源代码编译来安装Apache 2.4、MySQL 5.6和PHP 7.1。这个过程对于那些希望自定义软件配置或在没有预装包的环境中部署这些服务的系统管理员来说非常有用。 首先...

    nginx+apache+mysql+php+memcached+squid搭建门户网站

    ### Nginx+Apache+MySQL+PHP+Memcached+Squid 搭建门户网站 #### 一、前言与架构概述 随着互联网技术的发展,如何构建一个高效、稳定且能够应对高并发访问的Web服务器成为了许多企业和开发者关注的重点。本文将...

Global site tag (gtag.js) - Google Analytics