PHP部分

官网下载地址:https://www.php.net/downloads.php

我下载的是此时的最新稳定版8.2.3

cd /usr/local
wget https://www.php.net/distributions/php-8.2.3.tar.gz

解压

tar -zxvf php-8.2.3.tar.gz

安装一些必要依赖

yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel curl curl-devel openssl openssl-devel
yum -y install gcc gcc-c++ libxslt-devel* mod_ssl libtool-ltdl* sqlite-devel oniguruma-devel perl* libzip autoconf

进去

cd /usr/local/php-8.2.3/

配置

./configure --prefix=/usr/local/php8 --with-curl --with-freetype --enable-gd --with-gettext  --with-kerberos --with-libdir=lib64 --with-mysqli --with-openssl   --with-external-pcre --with-jpeg  --with-pdo-mysql --with-pear   --with-xsl --with-zlib --enable-fpm --enable-bcmath  --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --with-zip --enable-pcntl --enable-ftp --enable-session --enable-xml --without-pear --disable-phar

如果遇到这个错:

configure: error: Package requirements (libzip >= 0.11 libzip != 1.3.1 libzip != 1.7.0) were not met:

就停下来  看这篇文章 https://blog.csdn.net/tootsy_you/article/details/123132164

把问题解决掉   解决完了再重新执行上面的配置命令

编译

make

安装

make install

添加环境变量

vim /etc/profile

在最后一行下面加入

PATH=$PATH:/usr/local/php8/bin
export PATH

立即生效

source /etc/profile

查看PHP版本

php -v 

生成必要文件

cp /usr/local/php-8.2.3/php.ini-production /usr/local/php8/etc/php.ini
cp /usr/local/php-8.2.3/sapi/fpm/php-fpm /usr/local/php8/etc/php-fpm
cp /usr/local/php8/etc/php-fpm.conf.default /usr/local/php8/etc/php-fpm.conf
cp /usr/local/php8/etc/php-fpm.d/www.conf.default /usr/local/php8/etc/php-fpm.d/www.conf

编辑php.ini

vim /usr/local/php8/etc/php.ini 

以下参数仅供参考

date.timezone = PRC    //设置时区
file_uploads = On //是否允许上传
upload_tmp_dir = /tmp //上传临时目录
max_file_uploads = 20 //单个请求最多上传数量
upload_max_filesize = 10M //允许上传文件大小
post_max_size = 20M //允许post传输最大值(这个必须比upload_max_filezise大)
memory_limit = 128M //设置脚本最大使用内存
error_reporting=E_ALL //输出错误信息
error_log = /var/log/php.log //错误日志路径

创建日志文件

touch /var/log/php.log
chmod 755 /var/log/php.log

启动php-fpm,载入php.ini

/usr/local/php8/sbin/php-fpm -c /usr/local/php8/etc/php.ini

注意  如果修改了php.ini则每次需要杀掉php-fpm进程再重新启动php-fpm,PHP的解析执行靠的是这家伙,不靠nginx。

ps -ef | grep php-fpm
kill -9 上一条命令查到的PID

nginx部分

nginx的安装:https://www.cnblogs.com/fengyumeng/p/17163412.html

打开配置文件

vim /usr/local/nginx/conf/nginx.conf

每一段都是包在server{}之中  如要配置多个域名 则复制粘贴多个server{}代码块

其中server_name为域名,root为php代码所在目录 。 替换这两个即可

server {
listen 80;
server_name www.abc.com abc.com;
root /var/www/abc;
location / {
if (!-e $request_filename) {
rewrite ^/index.php(.*)$ /index.php?s=$1 last;
rewrite ^(.*)$ /index.php?s=$1 last;
}
index index.html index.htm index.php;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

保存退出

重启nginx

systemctl restart nginx

Linux安装PHP8 新版笔记的更多相关文章

  1. Linux安装最新版Node.js

    由于直接yum安装的nodejs版本太低,所以本篇文章向大家介绍在 Linux 上安装 Node.js 最新版的方法. 安装环境 本机系统:CentOS Linux release 7.5 Node. ...

  2. Linux安装最新版Mono,Jexus(截至2015年12月30日)

    安装系统必备: yum -y install gcc gcc-c++ bison pkgconfig glib2-devel gettext make libpng-devel libjpeg-dev ...

  3. 【进击后端】linux安装最新版nodejs

    nodejs下载:https://nodejs.org/zh-cn/download/ 1.cd /root/download 2.wget https://nodejs.org/dist/v6.11 ...

  4. deepin linux安装为知笔记

    sudo apt-get install wiznote

  5. CentOS(Linux) - SVN使用笔记(一) - 安装SVN过程及开启和关闭svn服务指令

    1.安装: yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql yum remove subversion 删除旧版 ...

  6. 【Linux】【Apatch Tomcat】Linux、CentOS7安装最新版Apartch Tomcat环境

    1.前言 相当嫌弃,博客园搞掉了我快写完的 Tomcat. 请先安装 :[Linux][Java]CentOS7安装最新版Java1.8.191运行开发环境 虽然安装Tomcat没啥技术,但是还是记录 ...

  7. Linux系统运维笔记(五),CentOS 6.4安装java程序

    Linux系统运维笔记(五),CentOS 6.4安装java程序 用eclipse编译通的java程序,现需要实施到服务器.实施步骤: 一,导出程序成jar包. 1,在主类编辑界面点右健,选  ru ...

  8. Linux系统运维笔记(四),CentOS 6.4安装 MongoDB

    Linux系统运维笔记(四),CentOS 6.4安装 MongoDB 1,下载 https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6 ...

  9. Linux系统运维笔记(四),CentOS 6.4安装Nginx

    Linux系统运维笔记(四),CentOS 6.4安装Nginx 1,安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtool op ...

  10. linux下安装最新版Subversion 1.8.9

    linux下安装最新版subversion,代码: [root@localhost subversion-1.8.9]# ./configure --prefix=/usr/local/subvers ...

随机推荐

  1. uniapp中封装一个弹框组件

    第一步:在components下创建 popup.vue子组件: popup.vue中 <template> <view> <view class="popus ...

  2. [编程基础] C++多线程入门7-条件变量介绍

    原始C++标准仅支持单线程编程.新的C++标准(称为C++11或C++0x)于2011年发布.在C++11中,引入了新的线程库.因此运行本文程序需要C++至少符合C++11标准. 文章目录 7 条件变 ...

  3. MQ系列9:高可用架构分析

    MQ系列1:消息中间件执行原理 MQ系列2:消息中间件的技术选型 MQ系列3:RocketMQ 架构分析 MQ系列4:NameServer 原理解析 MQ系列5:RocketMQ消息的发送模式 MQ系 ...

  4. HBase详解(03) - HBase架构和数据读写流程

    RegionServer 架构 每个RegionServer可以服务于多个Region 每个RegionServer中有多个Store, 1个WAL和1个BlockCache 每个Store对应一个列 ...

  5. 01-Sed简介

    1 Sed简介 Sed(Stream EDitor)为Uninx系统上提供将编辑工作自动化的编辑器,使用者无需直接编辑数据.使用者可以利用Sed所提供的20多种不同的函数,进行不同的编辑动作. Sed ...

  6. 【随笔记】SiliconLabs Android Demo 编译

    AndroidStudio:3.5.2 AndroidPhone:XiaoMi5 (Android 8.0) AndroidDemo:3.1.4-44 AndroidDemo 源码路径:Simplic ...

  7. mysql16 sql优化-order by-GROUP BY

    1.简要说明   在sql中常常用到order by,排序对于sql的查询速度有较大的的影响.mysql支持两种排序方式,FileSort和Index,Index效率高,它指MySQL扫描索引本身完成 ...

  8. 亲测有效 Hyper V3.4.0 终端美化工具 支持win/mac

    亲测有效 Hyper V3.4.0 终端美化工具 支持win/mac Hyper 是一款终端美化工具 基于Web技术,JS/HTML/CSS ,支持扩展增强,很不错! 且支持win,mac 下载地址 ...

  9. 视觉十四讲:第七讲_3D-2D:P3P

    1.P3P P3P输入数据为三对3D-2D的匹配点,一个单目相机,经过初始化,得到初始的3D点,就可以依次得到后续的姿态和3D点. ABC是上一时刻求的的3D点, abc是与上一次时刻的匹配点.利用相 ...

  10. 学习Java Day30

    今天回顾了一下整章对象与类,对自己进行了查漏补缺,依旧存在许多知识点的掌握不充分,类的使用的不熟练,同志仍需努力,革命尚未成功.