Centos6.4 编译安装 nginx php的方法

 更新时间:2017年03月05日 13:56:10   投稿:mdxy-dxy  
这篇文章主要介绍了Centos6.4 编译安装 nginx php的方法,需要的朋友可以参考下

一. 准备依赖库

安装make:

yum -y install gcc automake autoconf libtool make

安装g++:

yum install gcc gcc-c++

二. 编译安装pcre

pcre 是一个正则表达式的库,编译nginx需要依赖该库实现url rewrite

下载源码

cd /usr/local/src
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.33.tar.bz2
tar jxvf pcre-8.33.tar.bz2

编译安装

cd pcre-8.33
./configure
make
make install

三. 编译安装zlib库

zlib 是gzip实现

下载源码

cd /usr/local/src
wget http://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2.8.tar.gz

编译安装

cd zlib-1.2.8
./configure
make
make install

四. 安装openssl

检查是否安装了ssl

# rpm -qa|grep openssl
openssl-devel-1.0.1e-16.el6_5.14.x86_64
openssl-1.0.1e-16.el6_5.14.x86_64

如果没有安装

下载源码

cd /usr/local/src
wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz
tar -zxvf openssl-1.0.1c.tar.gz

编译安装

./configure
make
make install

五. 编译安装nginx

cd /usr/local/src
wget http://nginx.org/download/nginx-1.2.8.tar.gz
tar -zxvf nginx-1.2.8.tar.gz
cd nginx-1.2.8

 ./configure --sbin-path=/usr/local/nginx/nginx \
 --conf-path=/usr/local/nginx/nginx.conf \
 --pid-path=/usr/local/nginx/nginx.pid \
 --with-http_ssl_module \
 --with-pcre=/usr/local/src/pcre-8.33 \
 --with-zlib=/usr/local/src/zlib-1.2.8 \
 --with-openssl=/usr/local/src/openssl-1.0.1c
 make
 make install

安装成功完毕后验证是否安装成功

/usr/local/nginx/nginx 
netstat -alptn|grep 80

六. 编译安装php

新版本的php中已经集成了php-fpm

1. 准备工作

yum -y install libmcrypt-devel mhash-devel libxslt-devel\
 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

2. 源码编译安装libmcrypt

wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz
tar -zxvf libmcrypt-2.5.7.tar.gz 
cd libmcrypt-2.5.7 
./configure
make
make install

3. 下载源码

wget http://cn2.php.net/distributions/php-5.4.7.tar.gz
tar zvxf php-5.4.7.tar.gz

4. 编译安装cd php-5.4.7

./configure --prefix=/usr/local/php      \
   --enable-fpm         \
   --enable-mbstring        \
   --enable-sockets        \
   --enable-sysvsem        \
   --enable-sysvshm        \
   --enable-pcntl         \
   --enable-mbregex        \
   --enable-zip         \
   --enable-inline-optimization     \
   --disable-pdo         \
   --disable-debug        \
   --disable-rpath        \
   --with-mcrypt         \
   --with-zlib         \
   --with-bz2          \
   --with-mhash         \
   --with-curl         \
   --with-mysql         \
   --with-gd          \
   --with-pcre-regex        \
   --with-libdir=lib64

如果报如下错误

configure: error: Don't know how to define struct flock on this system, set --enable-opcache=no

修改 /etc/ld.so.conf 文件

vi /etc/ld.so.conf.d/local.conf
#添加2行
/usr/local/lib64 //64系统
/usr/local/src/libmcrypt-2.5.7/lib/.libs

#执行以下命令
chmod gu+x /etc/ld.so.conf.d/local.conf
#执行以下命令使生效
ldconfig -v

再次执行命令

成功后编译安装

七. 配置启动

1. 配置php-fpm

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

修改
user = llong
group = llong

2. 修改nginx 支持 php-fpm

打开 nginx.conf

其中server段增加如下配置,注意标红内容配置,否则会出现No input file specified.错误

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
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;
}

3. 测试是否配置成功

在/usr/local/nginx/html下创建index.php文件,输入如下内容

<? 
echo phpinfo(); 
?>

启动php-fpm和nginx

/usr/local/php/sbin/php-fpm (手动打补丁的启动方式/usr/local/php/sbin/php-fpm start)
 /usr/local/nginx/nginx

相关文章

  • LINUX中如何查看某个端口是否被占用的方法

    LINUX中如何查看某个端口是否被占用的方法

    这篇文章主要介绍了LINUX中如何查看某个端口是否被占用的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • linux实现apache安装与配置步骤详解

    linux实现apache安装与配置步骤详解

    在 Linux 系统中,安装和配置 Apache HTTP 服务器通常涉及以下步骤,以下以 Ubuntu 为例,其他 Linux 发行版的步骤也大致相同,本文分步骤给大家介绍的非常详细,需要的朋友参考下吧
    2023-11-11
  • Apache 认证总结

    Apache 认证总结

    经常上网的读者会遇到这种情况:访问一些网站的某些资源时,浏览器弹出一个对话框,要求输入用户名和密码来获取对资源的访问。
    2009-05-05
  • jmeter 在linux服务器的安装和运行教程图解

    jmeter 在linux服务器的安装和运行教程图解

    本文通过图文并茂的形式给大家介绍了jmeter 在linux服务器的安装和运行的,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-07-07
  • Apache安全配置之禁止目录访问的配置方法

    Apache安全配置之禁止目录访问的配置方法

    这篇文章主要介绍了Apache禁止目录访问的配置方法,这是一个常见的、非常有必要的apache安全配置之一,需要的朋友可以参考下
    2014-05-05
  • linux为repo 'AppStream'下载元数据失败的解决

    linux为repo 'AppStream'下载元数据失败的解决

    这篇文章主要介绍了linux为repo 'AppStream'下载元数据失败的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • linux删除 buff/cache缓存的操作方法

    linux删除 buff/cache缓存的操作方法

    这篇文章主要介绍了linux删除 buff/cache缓存的操作方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-04-04
  • VScode Remote SSH通过远程编辑与调试代码

    VScode Remote SSH通过远程编辑与调试代码

    这篇文章主要介绍了VScode Remote SSH通过远程编辑与调试代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • Linux解决RocketMQ中NameServer启动问题的方法详解

    Linux解决RocketMQ中NameServer启动问题的方法详解

    这篇文章主要为大家详细介绍了Linux解决RocketMQ中NameServer启动问题的方法,文中通过图片和示例代码进行了详细讲解,需要的小伙伴可以参考下
    2023-08-08
  • linux 编译安装python3.6的教程详解

    linux 编译安装python3.6的教程详解

    这篇文章主要介绍了linux 编译安装python3.6的教程,本文通过图文并茂的形式给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-10-10

最新评论