[PHP] 最新抢先编译安装PHP8.0.0 alph1以及FPM
(麻烦各位转载请注明出处和地址:陶士涵的菜地 , 谢谢 --2020年6月28日)
所有操作需要在root用户下
本机测试案例系统信息:ubuntu
安装路径:/usr/local/php8
解压缩:
wget https://downloads.php.net/~pollita/php-8.0.0alpha1.tar.gz
tar -zxvf php-8.0.0alpha1.tar.gz
cd php-8.0.0alpha1/
编译:
./configure --prefix=/usr/local/php8 \ --with-config-file-path=/usr/local/php8 \ --enable-mbstring \ --enable-ftp \ --enable-gd \ --enable-gd-jis-conv \ --enable-mysqlnd \ --enable-pdo \ --enable-sockets \ --enable-fpm \ --enable-xml \ --enable-soap \ --enable-pcntl \ --enable-cli \ --with-openssl \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --with-pear \ --with-zlib \ --with-iconv \ --with-curl \
make && make install
有依赖错误的,需要搜索解决一下
复制配置文件:
cp php.ini-production /usr/local/php8/php.ini
打开错误:
vim /usr/local/php8/php.ini
display_errors = On
复制fpm的启动脚本:
cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm8.0
增加执行权限
chmod +x /etc/init.d/php-fpm8.0
修改php-fpm配置文件:
cd /usr/local/php8/etc
cp php-fpm.conf.default php-fpm.conf
vim php-fpm.conf
去掉 pid = run/php-fpm.pid 前面的分号
修改启动用户:
user = www-data
group = www-data
修改监听端口:
listen = 127.0.0.1:9080
配置nginx:
server { listen 80; server_name test.sopans.com; access_log /var/log/nginx/test.sopans.com.access.log main; root /var/www/html/test; index index.html index.htm index.php; location ~ \.php { fastcgi_pass 127.0.0.1:9080; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # fastcgi_split_path_info ^(.+\.php)(/.*)$; # fastcgi_param PATH_INFO $fastcgi_path_info; include fastcgi_params; } }
启动fpm
/etc/init.d/php-fpm8.0 start
访问:
因为jit是绑定在opcache扩展里面的 , 所以需要编译安装opcache扩展
[PHP] php8的jit不支持32位系统WARNING: JIT not supported by host architecture
查看使用的哪一个配置文件
PHP8的JIT机制优化了zend引擎处理执行opcode的流程 , 不需要每次都解释执行 , 直接执行opcode编译成的机器码
相关文章
- Redis获取六位不重复数字(邀请码)
- pnpm monorepo实践
- Vue3源码学习:搭建monorepo开发环境(一)
- asp.net mvc 之旅—— 第二站 窥探Controller下的各种Result
- asp.net mvc 之旅—— 第一站 从简单的razor入手
- Sql Server之旅——终点站 nolock引发的三级事件的一些思考
- Sql Server之旅——第十四站 深入的探讨锁机制
- Sql Server之旅——第十三站 对锁的初步认识
- Sql Server之旅——第十二站 sqltext的参数化处理
- Sql Server之旅——第十一站 简单说说sqlserver的执行计划
- Sql Server之旅——第十站 看看DML操作对索引的影响
- Sql Server之旅——第九站 看公司这些DBA们设计的这些复合索引
- Sql Server之旅——第八站 复合索引和include索引到底有多大区别?
- Sql Server之旅——第七站 为什么都说状态少的字段不能建索引
- Sql Server之旅——第六站 使用winHex利器加深理解数据页
- Sql Server之旅——第五站 确实不得不说的DBCC命令(文后附年会福利)
- Sql Server之旅——第四站 你必须知道的非聚集索引扫描
- Sql Server之旅——第三站 解惑那些背了多年聚集索引的人
- Sql Server之旅——第二站 理解万恶的表扫描
- Sql Server之旅——第一站 那些给我们带来福利的系统视图