阿里云CentOS如何安装php环境
阿里云安装php环境的方法:首先安装php编译时所依赖的软件包;然后使用国内的搜狐镜像站下载php安装包;接着配置php;最后执行“make install”命令安装即可。
本文在介绍安装php环境前,已安装了nginx、mysql。
推荐:《PHP教程》
一、安装
使用国内的搜狐镜像站下载php5.6安装包,执行:
wget http://mirrors.sohu.com/php/php-5.6.2.tar.gz
安装之前,先安装php5.6编译时所依赖的软件包。如下:
yum -y install gcc gcc-c++ libxml2 libxml2-devel
接下来解压安装php5.6,先执行解压:
tar -xf php-5.6.2.tar.gz
接着进入php5.6的解压目录,现在开始配置php5.6,使用如下命令:
cd php-5.6.2
上述命令中–enable-fpm的作用是开启php的fastcgi功能即开启php-fpm功能,–with-mysql=/usr/local/mysql是启用php支持mysql的功能,/usr/local/mysql是mysql数据库的安装路径,注意这里如果报以下错误:
报错configure: error: Cannot find MySQL header files under /usr/local/mysql,可以尝试以下解决方案:
--with-mysql=/usr/local/mysql,
把它改为
--with-mysql或--with-mysql=/usr
–enable-mbstring表示启用mbstring模块mbstring模块的主要作用在于检测和转换编码,提供对应的多字节操作的字符串函数。目前php内部的编码只支持ISO-8859-*、EUC-JP、UTF-8,其他的编码的语言是没办法在php程序上正确显示的,所以我们要启用mbstring模块。
这步操作成功后,就会看到以下界面:
接下来编译安装,先执行make命令,成功后看到以下界面:
再执行make install命令就可以了,此时可以使用php –v查看安装成功后的版本信息。
二、配置
安装成功后接下来做基本的配置操作,通过上面安装完后,在/usr/local/lib目录下是没有php.ini文件的。在这先复制php安装文件提供的模版,如下:
cp php.ini-production /usr/local/lib/php.ini
此时服务器环境的nginx还是不支持php的,要通过fastcgi来处理有关php的请求。而php需要php-fpm这个组件来支持,这个就是前边配置php时使用到的那个命令–enable-fpm。
php-fpm功能开启后,还需要配置php-fpm。其实php-fpm的配置文件在安装php时,已经为我们提供了一个配置文件的模版。该模版为/usr/local/etc/php-fpm.conf.default,要复制一份该文件,并重命名为php-fpm.conf,如下:
cp /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.conf
为了让php-fpm已服务的形式启动。我们需要复制php安装目录下/sapi/fpm/init.d.php-fpm文件。如下:
cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
此时php-fpm文件是没有执行权限的,赋予php-fpm执行权限,并启动php-fpm,执行如下命令:
chmod a+x /etc/init.d/php-fpm
/etc/init.d/php-fpm start
启动后查看:
9000端口是php-fpm默认监听端口。
接下来配置nginx,使其支持php,如下:
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;
}
接着在nginx的网站根目录新建一文件index.php(/usr/local/nginx/html/index.php),内容如下:
<?php phpinfo(); ?>
再到/usr/local/nginx/sbin/目录下,执行./nginx启动nginx,再在浏览器输入服务器ip/index.php,如果看到如下信息则证明已安装启动成功: