简介
PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。
语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。
PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
百度百科
环境
软件名称 | 版本号 | 下载地址 |
---|---|---|
php | 5.5.33 | 下载地址 |
php | 5.6.19 | 下载地址 |
php | 7.0.4 | 下载地址 |
libmcrypt | 2.5.8 | 下载地址 |
步骤
初始化系统编译环境 选择合适的PHP版本 实验用CentOS 6.7 编译安装 php-5.6.19
yum -y install make gcc-c++ gcc bzip2-devel libjpeg-turbo-devel \
libpng-devel freetype-devel curl-devel mysql-devel libxml2-devel
编译安装libmcrypt
PHP依赖libmcrypt yum源的基础仓库没有libmcrypt的开发包 如果想yum安装 可以拓展epel仓库
1 | tar xf libmcrypt-2.5.8.tar.gz |
开始编译PHP
1 | tar xf php-5.6.19.tar.xz |
配置运行环境
1 | mkdir /etc/php |
启动服务
1 | service php-fpm start # 任意方式启动即可 |
[root@45c4f07c6049 etc]# netstat -anpt |grep php-fpm
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 49135/php-fpm
php-fpm默认使用nobody用户运行 监听127.0.0.1:9000端口
如果想在前端显示调试信息等 可以将 --daemonize 换成 --nodaemonize
这些配置会覆盖掉php-fpm.conf中的配置
附录
一般php-fpm能正常监听 就没问题了 不同与Apache的模块方式
fpm方式是通过Fastcgi方式提供服务的 web服务器将需要处理的php页面请求
转发给php-fpm的监听端口 php-fpm将处理好的数据再返回给web服务器
所以php-fpm方式是和web服务器无关的 只要你的web服务器支持Fastcgi
就都可以将php页面转发给php-fpm处理 想要验证 可以搭配Nginx等服务器解析php页面试试