Press "Enter" to skip to content

CaddysServer+PHP环境的配置步骤

☞ 前言

在上文中我们初尝了CaddyServer的运行。这次我们来尝试配合PHP使用。

☞ 编译安装PHP环境

一、下载

以下以CentOS 7.4为例,安装PHP的运行环境。可以先从PHP官网下载源码包,http://php.net/downloads.php

这里我选择下载最新版本的PHP-7.2.3

// Download Command Line:
wget http://cn.php.net/distributions/php-7.2.3.tar.gz

二、解压

将下载的包,解压:

tar -zxvf php-7.2.3.tar.gz

三、安装编译环境依赖

yum -y install gcc
yum -y install libxml2
yum -y install libxml2-devel
yum -y install openssl
yum -y install openssl-devel
yum -y install curl
yum -y install curl-devel
yum -y install libjpeg
yum -y install libjpeg-devel
yum -y install libpng
yum -y install libpng-devel
yum -y install freetype
yum -y install freetype-devel
yum -y install pcre
yum -y install pcre-devel
yum -y install libxslt
yum -y install libxslt-devel
yum -y install bzip2
yum -y install bzip2-devel

四、编译PHP源码包

先进入刚刚解压的PHP源码目录

cd php-7.2.3

然后执行配置设置

./configure --prefix=/usr/local/php --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-jpeg-dir --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --enable-zip

最后执行编译

make

五、安装PHP

执行安装

make install

六、配置文件及参数

php的默认安装位置上面已经指定为/usr/local/php,接下来初始化一些配置文件

cp php.ini-development /usr/local/php/lib/php.ini

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

cp sapi/fpm/php-fpm /usr/local/bin

然后设置php.ini,使用: vim /usr/local/php/lib/php.ini 打开php配置文件找到cgi.fix_pathinfo配置项,这一项默认被注释并且值为1,根据官方文档的说明,这里为了当文件不存在时,阻止Nginx将请求发送到后端的PHP-FPM模块,从而避免恶意脚本注入的攻击,所以此项应该去掉注释并设置为0。
设置完毕保存并退出。

另外注意一个地方就是php.ini配置文件的位置可以在编译前配置参数中设置,编译参数可以写成:–with-config-file-path=/usr/local/php 这样的话php就回去指定的目录下读取php.ini配置文件,如果不加这个参数默认位置就是php安装目录下的lib目录,具体也可以在phpinfo()输出界面查看,如果php.ini放到其他位置,php读取不到,那么所有的配置修改后都是不生效的,这点要注意。

设置php-fpm服务

cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

chmod +x /etc/init.d/php-fpm

cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

启动php-fpm,php-fpm 可用参数 start|stop|force-quit|restart|reload|status

service php-fpm start

至于,PHP环境配置告一段落。

☞ 安装CaddyServer

由于上一篇文章介绍了CaddyServer的安装步骤,这次我们简要重新执行一下。

一、下载Caddy

wget https://caddyserver.com/download/linux/amd64?license=personal && mv ./amd64?license=personal ./caddy.tar.gz

二、解压

tar -zxvf caddy.tar.gz

三、添加到系统path

mv ./caddy /usr/bin

四、创建目录

该目录用于主要放网站相关文件。
建议在/opt目录下创建wwwroot目录,并且在wwwroot创建

  • 1、配置文件Caddyfile
  • 2、网站根目录www
  • 3、日志目录log

☞ 配置CaddyServer

一、配置Caddy

在上一步我们创建了相应的目录和配置文件。所以我们在配置文件CaddyServer中写配置并保存:

192.168.52.60:80 {
   root /opt/wwwroot/www
   fastcgi / 127.0.0.1:9000 php {
      index index.php
   }
   gzip
   browse
   log /opt/wwwroot/log/access.log
   errors /opt/wwwroot/log/error.log
}

然后在www目录中创建index.php,并且写入以下内容并保存:

<?php
   phpinfo();
?>

最后在wwwroot目录中启动命令行:

[root@VM_7_243_centos wwwroot]# caddy

caddy已经启动。

☞ 成功解析PHP

一、访问试试

这时只要打开浏览器,输入192.168.52.60(你配置文件填写的IP),就发现PHP已被解析并成功访问。

成功解析PHP并访问。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注