上次Ubuntu升级到11.04就废了很大功夫,就是不舍得安装的种种东西,LNMP都从0.6升级到了0.7,表示没有问题。不过后来安装Gnome3的时候出现问题了,系统进不去了,各种解救之后无力回天,只好重装系统。

装好各种软件,配置之后,还是出现了各种问题,首先是NS安装出现了不一样的问题,再次花费了两天解决了这个问题。安装LNMPA的时候,再次出现502 Bad Gateway的错误,而0.6的解决方法根本无法用在0.7上。只好另找解决方法。

运行lnmp的时候,发现php-fdm根本没启动,PHP-FDM program is not running,如下图,说是没有找到相应的文件,到目录中查看了一下,php根本没有安装上。再查看安装时的日志文件,发现php确实没有安装上,对照安装文件ubuntu.sh文件,发现php安装的代码没有运行,只是运行了解压代码。

PHP-FDM program not running

下面的代码除了前两行运行了之后,后面的代码根本没有运行,理论上只要单独运行这些代码就可以了。要转到lnmp的目录下。

export PHP_AUTOCONF=/usr/local/autoconf-2.13/bin/autoconf
export PHP_AUTOHEADER=/usr/local/autoconf-2.13/bin/autoheader
tar zxvf php-5.2.17.tar.gz
gzip -cd php-5.2.17-fpm-0.5.14.diff.gz | patch -d php-5.2.17 -p1
cd php-5.2.17/
./buildconf --force
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-discard-path --enable-magic-quotes --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --enable-mbstring --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --with-mime-magic
make ZEND_EXTRA_LIBS='-liconv'
make install

mkdir -p /usr/local/php/etc
cp php.ini-dist /usr/local/php/etc/php.ini
strip /usr/local/php/bin/php-cgi
cd ../

ln -s /usr/local/php/bin/php /usr/bin/php
ln -s /usr/local/php/bin/phpize /usr/bin/phpize
ln -s /usr/local/php/sbin/php-fpm /usr/bin/php-fpm

但是,在安装的过程中会出现

collect2: ld returned 1 exit status make: *** [sapi/cgi/php-cgi] 错误 1

运行下面的语句之后,再次执行刚刚发生错误的语句。

apt-get install libjpeg62 libjpeg62-dev libjpeg-dev
ln -s /usr/lib/i386-linux-gnu/libpng* /usr/lib/
ln -s /usr/lib/i386-linux-gnu/libjpeg* /usr/lib/

后来证明,这样做是对的,我也安装成功了,成功后会出现下图所示的样子。

php安装成功

当然,其实可以简化处理这个过程的,自己写脚本就好。

我写好了一个,点此下载,把这个文件放到lnmp0.7-full文件夹下,然后赋予laycher.sh这个文件755的权限,然后执行它,执行代码如下:

laycher@ubuntu:~$ cd 下载
laycher@ubuntu:~/下载$ cd lnmp0.7-full/
laycher@ubuntu:~/下载/lnmp0.7-full$ chmod 755 laycher.sh
laycher@ubuntu:~/下载/lnmp0.7-full$ sudo ./laycher.sh

如果还有什么问题的话,欢迎和我讨论。

>> 若为原创,转载请注明: 转载自Laycher's Blog

>> 本文链接地址: LNMPA(LNMP0.7)安装出现502 Bad Gateway解决方法

>> 订阅本站: http://feed.feedsky.com/laycher