静态PHP环境:不用部署直接拿来用的PHP
当前(2024年)建议使用
一句命令自动安装PHP+Composer
地址 www.workerman.net/download (同时提供各个操作系统的静态PHP文件下载)
原文 www.workerman.net/a/1771
意义
把 PHP 编译成可执行二进制文件,然后把可执行文件放到系统命令能搜索到的目录,比如 /usr/bin.
某种程度上来说,不用为部署 Linux 安装 PHP 环境费时费力了。
如果你喜欢用 宝塔 之类的工具,可能对你的意义不大。
项目地址
文档地址
快速体验
项目组已经提前编译好了一些可用的PHP版本,可以不用自己编译。点击访问
版本的选择:
- 需要 php-fpm 来构建 Apaceh Or Nginx 传统部署,那么选择静态 php-fpm。
- 单独只要一个运行PHP的环境,那么选择静态 php-cli。
使用示例
需求:需要一个PHP8.3的php-fpm环境
- 选择一个合适的静态 php-fpm:
-
然后到下载到服务器:
wget https://dl.static-php.dev/static-php-cli/common/php-8.3.6-fpm-linux-x86_64.tar.gz
-
解压
tar -xvf php-8.3.6-fpm-linux-x86_64.tar.gz
解压完目录就会有个可执行的 php-fpm.
-
查看已扩展
dev@bigbug-gg ~> ./php-fpm -m [PHP Modules] bcmath bz2 ... [Zend Modules]
-
移动到 /usr/bin 目录 或者 建立软链,方便命令查找
也可以放到 /usr/local/bin ,然后建立软链接到 /usr/bin
-
看下效果
dev@bigbug-gg ~> whereis php-fpm php-fpm: /usr/bin/php-fpm dev@bigbug-gg ~> php-fpm -v PHP 8.3.6 (fpm-fcgi) (built: May 7 2024 04:48:57) Copyright (c) The PHP Group Zend Engine v4.3.6, Copyright (c) Zend Technologies dev@bigbug-gg ~>
-
补充 php-fpm.conf 文件:
*我通过AI给生成 /etc/php-fpm.conf ,然后根据 运行php-fpm
,提示什么,就补充什么。
- 具体过程
dev@bigbug-gg > cd /etc/php/8.3/fpm/pool.d/ dev@bigbug-gg > ls www.conf # 修改由AI生成的config dev@bigbug-gg > sudo vim /etc/php-fpm.conf # 修改完之后,运行 php-fpm, 报错提示什么,就补什么 dev@bigbug-gg > sudo php-fpm ERROR: unable to bind listening socket for address '/run/php/php8.3-fpm.sock': No such file or directory (2) ERROR: FPM initialization failed # 没有这个目录创建即可 dev@bigbug-gg > sudo mkdir -p /run/php # 再次尝试,没报错就是成功了 dev@bigbug-gg > sudo php-fpm # 查看进程 dev@bigbug-gg > ps -aux | grep php-fpm root 1725304 0.0 0.3 31644 28908 ? Ss 09:41 0:00 php-fpm: master process (/etc/php-fpm.conf) www-data 1725305 0.0 0.3 31652 28908 ? S 09:41 0:00 php-fpm: pool www www-data 1725306 0.0 0.3 31652 28908 ? S 09:41 0:00 php-fpm: pool www dev 1725331 0.0 0.0 7008 2176 pts/1 R+ 09:43 0:00 grep --color=auto php-fpm # 结束进程 dev@bigbug-gg > sudo killall php-fpm # 检查是成功 dev@bigbug-gg > ps -aux | grep php-fpm dev 1725375 0.0 0.0 7008 2048 pts/1 S+ 09:43 0:00 grep --color=auto php-fpm dev@bigbug-gg /e/p/8/f/pool.d>
结束
感谢开源的开发者们。我是通过看 webman手册 文档,才知道 静态PHP环境
本作品采用《CC 协议》,转载必须注明作者和本文链接
自己玩感觉还行,但是还是有些局限性,比如扩展支持、打包特定版本问题;
但是也挺好的,虽然不是真正二进制,但是all in one 也非常不错;