如何解决改了php.ini中的open_basedir之后仍然报open_basedir restriction错误的问题?

今天PHP突然报open_basedir restriction错误,改了php.ini还是报错,于是百度查了查,总结如下: 原来LNMP1.2的防跨目录由原来在php.ini中设置 移至网站根目录下的 .user.ini 进行控制。所以要修改open_basedir的目录,得修改网站根目录下的 .user.ini .user.ini文件无法直接修改 如要修改,需要先执行:chattr -i /网
如何解决改了php.ini中的open_basedir之后仍然报open_basedir restriction错误的问题?

PHP编译参数configure配置详解,以及php.ini说明

人,有了物质才能生存;人,有了理想才谈得上生活。 因为现在都是宝塔、lnmp这些自动进行配置的,这个知识点平常很少需要用到,但了解一下,确实能让一些问题豁然开朗。 ./configure -h 在源代码目录中,该命令可以查看所有编译参数以及对应的英文解释 --prefix=/opt/php //指定 php 安装目录 --with-apxs2=/usr/local/apache/bin/apxs
PHP编译参数configure配置详解,以及php.ini说明

PHP解析Xml:SimpleXML类学习笔记

SimpleXML 是 PHP 5 中的新特性。SimpleXML 扩展提供了一种获取 XML 元素的名称和文本的简单方式。与 DOM 或 Expat 解析器相比,SimpleXML 仅仅用几行代码就可以从 XML 元素中读取文本数据。SimpleXML 可把 XML 文档(或 XML 字符串)转换为对像; 元素被转换为 SimpleXMLElement 对象的单一属性。当同一级别上存在多个元素时
PHP解析Xml:SimpleXML类学习笔记

PHP Swoole学习笔记,持续记录

PHPStorm Swoole代码提示:https://plugins.jetbrains.com/plugin/13040-swoole-ide-helper/versions PHP swoole代码提示,类型包:https://github.com/swoole/ide-helper 匿名函数(Anonymous functions),也叫闭包函数(closures),允许 临时创建一个没有
PHP Swoole学习笔记,持续记录

详细了解 Cookie、Session、Token以及oauth2、jwt

很久很久以前,Web 基本上就是文档的浏览而已,既然是浏览,作为服务器,不需要记录谁在某一段时间里都浏览了什么文档。 每次请求都是一个新的 HTTP 协议,就是请求加响应,尤其不用记住是谁刚刚发了 HTTP 请求,每个请求相对来说都是全新的。 但是随着交互式 Web 应用的兴起,像在线购物网站和需要登录的网站等就面临一个问题,那就是要管理会话,必须记住哪些人登录系统,哪些人往自己的购物车中放商品。
详细了解 Cookie、Session、Token以及oauth2、jwt

理解PHP MVC,以及NPM、YARN命令的相关说明

MVC,在我印象中最典型的、自己用的多的当属THinkPHP。 MVC包括控制器(Controller),模型(Model),视图(View)。 控制器的作用是调用模型和 视图,将模型产生的数据传递给视图,并让视图去显示 模型的作用是获取数据并处理返回数据 视图的作用是将取得的数据进行美化,并向用户终端输出 1. 浏览者 -> 调用控制器,发出指令 2. 控制器 -> 按指令选择合适的
理解PHP MVC,以及NPM、YARN命令的相关说明

PHP允许前端跨域请求的相关请求头设置、文件下载

CORS 请求分成两类:简单请求(simple request)和非简单请求(not-so-simple request)。 PHP中的 header 函数用于设置响应头。 当POST数据为JSON,必须允许请求头才能跨域访问,因为Content-type:application/json; 默认是不允许跨域的。 header('Access-Control-Allow-Origin: *');
PHP允许前端跨域请求的相关请求头设置、文件下载

PHP批量识别Nginx网站日志内的百度真假爬虫记录

通过分析网站日志可以统计出百度的真实抓取次数、分析抓取情况。 网站一般都有一定的反爬虫机制,但是为了正常收录会通过UA排除百度的爬虫,也就导致了很多做采集、爬虫的人冒充百度爬虫UA用以越过反爬虫机制。 逐条分析每一条日志,筛选出百度爬虫的日志,再通过exec函数执行nslookup命令反向解析IP获取解析的域名,域名中包括baiduspider关键词的就是真的百度爬虫。 下载PHP脚本(百度网盘)
PHP批量识别Nginx网站日志内的百度真假爬虫记录

Swoole 学习:协程、线程、IO多路复用、PHP多进程。

回顾自己学的操作系统原理,线程分为系统级线程和用户级线程(线程是调度单位、进程是资源分配单位) 系统级:调度由操作系统控制,线程之间的切换是系统层面; 用户级:程序内的类似老大一样的程序控制着所有的线程,切换是在程序内完成,相比系统级的线程切换更快,基本不消耗资源; 不同在哪呢?系统级线程的分配的时间片(由操作系统分配的运行时间)是1比1的,创建10个就是10个量级。用户级线程则是共享着所属进程的
Swoole 学习:协程、线程、IO多路复用、PHP多进程。

PHP批量压缩整站图片的小工具

在保证图片质量的前提下,批量压缩整个网站目录下所有图片的大小。 说明:使用前请先到https://tinypng.com/developers,邮箱注册获取Apikey,每月免费压缩500次(邮箱一大堆换着来就行); 首先点这里(百度网盘)下载PHP脚本,提取码8888,脚本默认是扫描所在目录和所在目录的子目录下的所有图片文件进行压缩。编辑compress.php,找到下面两行代码。 /*设置ke
PHP批量压缩整站图片的小工具

PHP编程遇到过的细节问题(总结)

习惯本地开发调试了,忘记了127.0.0.1只能是本地,监听所有IP要监听 0.0.0.0。 use语句只在它所声明的物理文件内有效,use定义别名之后,无法使用之前的名字。 use,给命名空间定义一个别名,用于简化复杂的命名空间调用。use abc as d,调用d下面的类、函数、常量等成员时  dson(); use,从命名空间引入类,引入后可直接使用,不需要前缀(引入时可以定义别名)。use
PHP编程遇到过的细节问题(总结)

POST 提交数据的时候参数有哪些类型?

1. HTTP 协议是以 ASCII 码 传输,建立在 TCP/IP 协议之上的应用层规范。规范把 HTTP 请求分为三个部分:状态行、请求头、消息主体。 2. 协议规定 POST 提交的数据必须放在消息主体(entity-body)中,但协议并没有规定数据必须 使用什么编码方式 。实际上,开发者完全可以自己决定消息主体的格式,只要最后发送的 HTTP 请求满足上面的格式就可以。 3. 数据发送出
POST 提交数据的时候参数有哪些类型?

编程日记:PHP实用函数记录(二)

匿名函数(Anonymous functions),也叫闭包函数(closures),允许 临时创建一个没有指定名称的函数。最经常用作回调函数 callable参数的值。 闭包的概念等同于JS里的闭包。可在函数内进行定义赋值 匿名函数目前是通过 Closure 类来实现的。闭包函数也可以作为变量的值来使用。PHP 会自动把此种表达式转换成内置类 Closure 的对象实例。把一个 closure
编程日记:PHP实用函数记录(二)