1、安装依赖包
把下面的命令复制粘贴到远程连接工具中执行即可
yum install -y gd libjpeg* libpng* libXpm* php-gd libxml2 libxml2-devel libcurl-devel freetype-devel kernel keyutils patch perl kernel-headers gtk+-devel glibc libgomp libstdc++-devel keyutils-libs-devel libsepol-devel libselinux-devel krb5-devel fontconfig fontconfig-devel gettext gettext-devel mcurses* libtool* patch policycoreutils bison
执行成功后显示如下提示,
2、获取最新且稳定的PHP
从官网php.net获取下载包链接地址
使用下面的命令,将PHP压缩包下载到服务器上,
wget https://www.php.net/distributions/php-7.4.1.tar.gz
3、解压下载的PHP压缩文件包
tar -zxvf php-7.4.1.tar.gz
解压成功后显示,
4、配置
在PHP的解压目录中执行如下命令,即可完成比较全面的配置
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-zlib --with-libxml-dir --with-gd --with-iconv --with-png-dir --with-jpeg-dir --enable-sockets --enable-mbstring --enable-inline-optimization --enable-zend-multibyte --with-freetype-dir --enable-fpm
注:在配置的过程中可能会出现错误,提示no packages 'xxx' found,找到对应的package,安装即可
执行配置命令出现如下的提示时,表名配置成功,
5、编译安装
#编译是make 安装是make install
make && make install
编译安装成功后,显示如下提示
6、管理PHP的配置文件php.ini
在PHP的解压缩包中,有两个php的配置文件,一个是开发环境使用,一个是生产环境使用
在阿里云上,把生产环境使用的配置文件复制到PHP安装目录的配置文件夹下/usr/local/php/etc(在第4步的配置中有指定PHP的配置目录),并重命名为php.ini
#此命令在PHP的解压缩包文件夹下使用
cp php.ini-production /usr/local/php/etc/php.ini
服务器系统的etc文件夹是整个服务器的配置文件目录,安装完PHP后需要把PHP的配置文件添加或更新到服务器配置目录下,查看/etc下是否有php.ini文件,如果有,将其删除,然后把PHP安装目录下的配置文件软连接到/etc下
#进入到服务器系统的配置文件目录中
cd /etc
#查看是否有php.ini文件
ll | grep php.ini
#此命令是在服务器的配置文件目录etc下执行
rm -y php.ini
执行上面的删除命令后,再查找php.ini文件已不存在。
然后,将PHP安装目录下的配置文件php.ini软连接到服务器的配置文件目录下,
ln -s /usr/local/php/etc/php.ini /etc/php.ini
执行上面的软连接命令后,查找服务器的配置文件目录中是否有php.ini的结果如下,
7、管理PHP的进程管理器的配置文件
在PHP的安装目录的配置文件夹中有默认的PHP的进程管理器配置文件,将其复制为进程管理配置文件,
要PHP进程管理器管理PHP,需要修改管理器的配置文件,
保存退出。
设置php-fpm开机启动
#此命令需要在PHP的解压缩包目录下执行
cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
chkconfig php-fpm on是设置开机启动。
8、修改nginx配置,使其支持PHP的访问
在nginx安装目录找到nginx.conf文件,我的直接在安装目录下,我的安装目录是/etc/nginx,配置文件的路径是/etc/nginx/nginx.conf.
打开nginx.conf,没有对PHP的配置,但引入了更多的配置文件
进入到引入的对应文件,打开配置文件default.conf,找到PHP的配置地方,
将代码块中的注释全部去掉,并将参数fastcgi_param的值/scripts改为$document_root,其中$document_root的值是此处的root参数的值,这里原来位html,要改为php文件存放的位置/usr/share/nginx/html然后保存退出。
重启(或重新加载)nginx.
访问放在/usr/share/nginx/html/下的index.php,显示页面,