ubuntu或centos编译安装php和Nginx支持

ubuntu更新源

1

apt-get update

ubuntu安装必须的依赖库

1

2

3

4

5

6

7

8

9

10

11

12

13

14

sudo apt-get -y install autoconf && \

sudo apt-get -y install libxml2-dev && \

sudo apt-get -y install bzip2 && \

sudo apt-get -y install libcurl3-openssl-dev && \

sudo apt-get -y install libcurl4-gnutls-dev && \

sudo apt-get -y install libjpeg-dev && \

sudo apt-get -y install libpng-dev && \

sudo apt-get -y install libxpm-dev && \

sudo apt-get -y install libfreetype6-dev && \

sudo apt-get -y install libt1-dev && \

sudo apt-get -y install libmcrypt-dev && \

sudo apt-get -y install libmysql++-dev && \

sudo apt-get -y install libxslt1-dev && \

sudo apt-get -y install libbz2-dev

ubuntu软链接库文件

1

2

3

4

5

6

cd /usr/lib && \

ln -s /usr/lib/x86_64-linux-gnu/libXpm.so . && \

ln -s /usr/lib/x86_64-linux-gnu/libXpm.a . && \

ln -s /usr/lib/x86_64-linux-gnu/libXpm.so.4 . && \

ln -s /usr/lib/x86_64-linux-gnu/libXpm.so.4.11.0 . && \

echo 'successful!'

centos安装必须的依赖库

1

yum install -y gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libpng libpng-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses curl openssl-devel gdbm-devel db4-devel libXpm-devel libX11-devel gd-devel gmp-devel readline-devel libxslt-devel expat-devel xmlrpc-c xmlrpc-c-devel

安装加密扩展库

1

2

3

4

5

6

7

libmcrypt-2.5.8.tar.gz(http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/)

cd /usr/local/src/

tar zxvf libmcrypt-2.5.8.tar.gz 

cd libmcrypt-2.5.8

./configure

make

make install

centos添加的库文件路径

1

2

3

编辑 /etc/ld.so.conf 加入/usr/local/lib

再执行 ldconfig -v

否则会报:Don't know how to define struct flock on this system, set --enable-opcache=no

下载最新php源码,编译安装:

1

2

3

4

5

6

cd /usr/local && \

sudo mkdir php5 && \

cd php5

sudo wget http://cn2.php.net/distributions/php-5.5.23.tar.gz

sudo tar zxvf php-5.5.23.tar.gz

cd php-5.5.23

一定要注意prefix路径

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

sudo ./configure \

--prefix=/usr/local/php5 \

--with-mysql=mysqlnd \

--with-mysqli=mysqlnd \

--with-pdo-mysql=mysqlnd \

--with-config-file-path=/usr/local/php5/etc \

--with-zlib \

--with-curl \

--with-curlwrappers \

--with-mcrypt \

--with-gd \

--with-openssl \

--with-mhash \

--with-xmlrpc \

--with-jpeg-dir \

--with-png-dir \

--with-xpm-dir \

--with-freetype-dir \

--with-zlib-dir \

--enable-shared \

--enable-fpm \

--enable-xml \

--disable-rpath \

--enable-safe-mode \

--enable-bcmath \

--enable-shmop \

--enable-sysvsem \

--enable-inline-optimization \

--enable-mbregex \

--enable-mbstring \

--enable-gd-native-ttf \

--enable-pcntl \

--enable-sockets \

--enable-zip \

--enable-ftp \

--enable-soap

不出问题的话就执行最后一步编译安装:

1

2

sudo make

sudo make install

以上就完成了php-fpm的安装。

下面是对php-fpm运行用户进行设置

1

2

3

cd /usr/local/php5

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

vi etc/php-fpm.conf

修改

1

2

user = www-data

group = www-data

如果www-data用户不存在,那么先添加www-data用户

1

2

groupadd www-data

useradd -g www-data www-data

启动php-fpm

1

sudo /usr/local/php5/sbin/php-fpm

修改nginx的配置文件(/etc/nginx/conf.d/default.conf)

1

2

3

4

5

6

7

8

9

10

11

location / {

root web根目录;

index index.html index.htm index.php;

}

location ~ \.php$ {

root html;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME web根目录$fastcgi_script_name;

include fastcgi_params;

}

问题1:

1

2

3

4

5

configure: error: Cannot find OpenSSL's libraries

解决:

sudo apt-get install openssl-dev

在一些系统中,像Ubuntu Feisty,您可能需要使用此命令:

sudo apt-get install libcurl3-openssl-dev

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程工人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值