详解阿里云安装PHP以及扩展脚本的示例代码分享
1、安装php, nginx服务器下安装: #!/bin/bash rm -rf php-5.4.27 if [ ! -f php-5.4.27.tar.gz ];then # wget http://test-oracle.oss-cn-hangzhou.aliyuncs.com/php-5.4.27.tar.gz wget http://cn2.php.net/distributions/php-5.4.27.tar.gz fi tar zxvf php-5.4.27.tar.gz cd php-5.4.27 ./configure --prefix=/alidata/server/php \ --with-config-file-path=/alidata/server/php/etc \ --with-mysql=mysqlnd \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --enable-fpm \ --enable-fastcgi \ --enable-static \ --enable-inline-optimization \ --enable-sockets \ --enable-wddx \ --enable-zip \ --enable-calendar \ --enable-bcmath \ --enable-soap \ --with-zlib \ --with-iconv \ --with-gd \ --with-xmlrpc \ --enable-mbstring \ --without-sqlite \ --with-curl \ --enable-ftp \ --with-mcrypt \ --with-freetype-dir=/usr/local/freetype.2.1.10 \ --with-jpeg-dir=/usr/local/jpeg.6 \ --with-png-dir=/usr/local/libpng.1.2.50 \ --disable-ipv6 \ --disable-debug \ --disable-maintainer-zts \ --disable-safe-mode \ --disable-fileinfo CPU_NUM=$(cat /proc/cpuinfo | grep processor | wc -l) if [ $CPU_NUM -gt 1 ];then make ZEND_EXTRA_LIBS='-liconv' -j$CPU_NUM else make ZEND_EXTRA_LIBS='-liconv' fi make install cd .. cp ./php-5.4.27/php.ini-production /alidata/server/php/etc/php.ini #adjust php.ini sed -i 's#; extension_dir = \"\.\/\"#extension_dir = "/alidata/server/php/lib/php/extensions/no-debug-non-zts-20100525/"#' /alidata/server/php/etc/php.ini sed -i 's/post_max_size = 8M/post_max_size = 64M/g' /alidata/server/php/etc/php.ini sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 64M/g' /alidata/server/php/etc/php.ini sed -i 's/;date.timezone =/date.timezone = PRC/g' /alidata/server/php/etc/php.ini sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=1/g' /alidata/server/php/etc/php.ini sed -i 's/max_execution_time = 30/max_execution_time = 300/g' /alidata/server/php/etc/php.ini #adjust php-fpm cp /alidata/server/php/etc/php-fpm.conf.default /alidata/server/php/etc/php-fpm.conf sed -i 's,user = nobody,user=www,g' /alidata/server/php/etc/php-fpm.conf sed -i 's,group = nobody,group=www,g' /alidata/server/php/etc/php-fpm.conf sed -i 's,^pm.min_spare_servers = 1,pm.min_spare_servers = 5,g' /alidata/server/php/etc/php-fpm.conf sed -i 's,^pm.max_spare_servers = 3,pm.max_spare_servers = 35,g' /alidata/server/php/etc/php-fpm.conf sed -i 's,^pm.max_children = 5,pm.max_children = 100,g' /alidata/server/php/etc/php-fpm.conf sed -i 's,^pm.start_servers = 2,pm.start_servers = 20,g' /alidata/server/php/etc/php-fpm.conf sed -i 's,;pid = run/php-fpm.pid,pid = run/php-fpm.pid,g' /alidata/server/php/etc/php-fpm.conf sed -i 's,;error_log = log/php-fpm.log,error_log = /alidata/log/php/php-fpm.log,g' /alidata/server/php/etc/php-fpm.conf sed -i 's,;slowlog = log/$pool.log.slow,slowlog = /alidata/log/php/\$pool.log.slow,g' /alidata/server/php/etc/php-fpm.conf #self start install -v -m755 ./php-5.4.27/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm /etc/init.d/php-fpm start sleep 5 httpd服务器下安装: #!/bin/bash rm -rf php-5.4.27 if [ ! -f php-5.4.27.tar.gz ];then wget http://test-oracle.oss-cn-hangzhou.aliyuncs.com/php-5.4.27.tar.gz fi tar zxvf php-5.4.27.tar.gz cd php-5.4.27 ./configure --prefix=/alidata/server/php \ --with-config-file-path=/alidata/server/php/etc \ --with-apxs2=/alidata/server/httpd/bin/apxs \ --with-mysql=mysqlnd \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --enable-static \ --enable-maintainer-zts \ --enable-zend-multibyte \ --enable-inline-optimization \ --enable-sockets \ --enable-wddx \ --enable-zip \ --enable-calendar \ --enable-bcmath \ --enable-soap \ --with-zlib \ --with-iconv \ --with-gd \ --with-xmlrpc \ --enable-mbstring \ --without-sqlite \ --with-curl \ --enable-ftp \ --with-mcrypt \ --with-freetype-dir=/usr/local/freetype.2.1.10 \ --with-jpeg-dir=/usr/local/jpeg.6 \ --with-png-dir=/usr/local/libpng.1.2.50 \ --disable-ipv6 \ --disable-debug \ --disable-maintainer-zts \ --disable-safe-mode \ --disable-fileinfo CPU_NUM=$(cat /proc/cpuinfo | grep processor | wc -l) if [ $CPU_NUM -gt 1 ];then make ZEND_EXTRA_LIBS='-liconv' -j$CPU_NUM else make ZEND_EXTRA_LIBS='-liconv' fi make install cd .. cp ./php-5.4.27/php.ini-production /alidata/server/php/etc/php.ini #adjust php.ini sed -i 's#; extension_dir = \"\.\/\"#extension_dir = "/alidata/server/php/lib/php/extensions/no-debug-non-zts-20100525/"#' /alidata/server/php/etc/php.ini sed -i 's/post_max_size = 8M/post_max_size = 64M/g' /alidata/server/php/etc/php.ini sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 64M/g' /alidata/server/php/etc/php.ini sed -i 's/;date.timezone =/date.timezone = PRC/g' /alidata/server/php/etc/php.ini sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=1/g' /alidata/server/php/etc/php.ini sed -i 's/max_execution_time = 30/max_execution_time = 300/g' /alidata/server/php/etc/php.ini /etc/init.d/httpd restart sleep 5 2、安装php5.4扩展 redis扩展:要将下载好的安装包与shell文件放在同一目录下。 #!/bin/bash if [ `uname -m` == "x86_64" ];then machine=x86_64 else machine=i686 fi #mongo #tar -xzvf redis-2..2.5.tgz cd redis-2.2.5 /alidata/server/php/bin/phpize ./configure --enable-redis --with-php-config=/alidata/server/php/bin/php-config CPU_NUM=$(cat /proc/cpuinfo | grep processor | wc -l) if [ $CPU_NUM -gt 1 ];then make -j$CPU_NUM else make fi make install cd .. echo "extension=redis.so" >> /alidata/server/php/etc/php.ini 安装php5.4的mongo扩展: #!/bin/bash if [ `uname -m` == "x86_64" ];then machine=x86_64 else machine=i686 fi #mongo tar -xzvf mongo-1.6.9.tgz cd mongo-1.6.9 /alidata/server/php/bin/phpize ./configure --enable-mongo --with-php-config=/alidata/server/php/bin/php-config CPU_NUM=$(cat /proc/cpuinfo | grep processor | wc -l) if [ $CPU_NUM -gt 1 ];then make -j$CPU_NUM else make fi make install cd .. echo "extension=mongo.so" >> /alidata/server/php/etc/php.ini 注意:先停掉php-fpm服务在进行安装,然后重启, 此时大家在命令行中输入命令:php -v 显示还是php5.3,这是因为php命令并没有被替换成5.4版本的。 1、which php 会输出: /usr/bin/php或者其他位置。 2、rm -f /usr/bin/php 3、sudo ln -s xxx/php-5.4xx/spai/cli/php /usr/bin/php OK搞定。 pecl命令同样的操作步奏哦!!!
以上がAlibaba Cloud の PHP インストールの詳細説明と拡張スクリプトのサンプルコード共有の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。