WAF - 是时候跟正则表达式说再见
WAF是时候跟正则表达式说再见 破见 weibo.com/u/5261507198 正则表达式不适合用于构建WAF 现有WAF的解决方案 如何构建未来的WAF Part 1 Part 2 Part 3 议题内容 Part 1 正则表达式不适合用于构建WAF 感性认识—误报和漏报难以平衡 尝试寻找有理证明 WAF自身安全 正则表达式0 码力 | 24 页 | 1.66 MB | 1 年前3鸟哥的Linux 私房菜
一个是『核心』、一 个是『一堆核心提供的工具』 我们以使用者常使用的 Windows 计算机来做一个简单的说明好了。大 家应该都使用过 Windows 计算机里面的档案总管吧?那么当你开启档案总管的时候,他是否会显示你 硬盘当中的数据?这个显示硬盘里面的数据,就是『核心』帮你做的,但是,你要核心去显 示硬盘哪 一个目录下的数据,则是由『档案总管』这个『工具』帮你达成的!这样可以理解吗?再来,如果您 Linux 自 己的核心, Windows 也有他自己的核心。所以说,当有新的硬件加入到你的系统中的时候,那么若你 的『 Kernel 』并没有支持他的时候,呵呵,这个新的硬件就肯定无法工作的,因为控制他的 Kernel 并不认识他呀!这样了解了吗?!先有个概略性的了解,后面我们提到『核心编译』的时候会在更详 细的谈到他! 一般来说,Kernel 管理的事项有: • System call 是 Linux 的老大哥『 Unix 』是也!怎么这么说呢?!他们这两个家伙有什么关系呀?这里就给他说一说 啰!众所皆知的, Linux 的核心是由 Linus Torvalds 在 1991 年的时候给他开发出来的,并且丢到网络上 提供大家下载,后来大家觉得这个小东西 ( Linux Kernel ) 相当的小而精巧,所以慢慢的就有相当多的朋友 投入这个小东西的研究领域里面去了!但是为什么这的小0 码力 | 386 页 | 11.69 MB | 1 年前3electron中文教程
CN) 仅提供文档编写、整理、归类等功能,以及对文档内容的生成和导出工具。 文档内容由网友们编写和整理,书栈(BookStack.CN) 难以确认文档内容知识点是否错漏。如果您在阅读文档 获取知识的时候,发现文档内容有不恰当的地方,请向我们反馈,让我们共同携手,将知识准确、高效且有效地传递 给每一个人。 同时,如果您在日常工作、生活和学习中遇到有价值有营养的知识文档,欢迎分享到 书栈(BookStack Application Loader 上传软件到 iTunes Connect 进行处理。请确保在上传之 前你已经 创建应用记录,再 提交进行审核。 为了让你的应用满足沙箱的所有条件,在 MAS 构建的时候,下面的模块已被禁用: crashReporter autoUpdater 并且下面的行为也改变了: 一些视频采集功能无效。 某些辅助功能无法访问。 应用无法检测 DNS 变化。 在Mac App Store 创建, 它的值为 true , 在其它的地方值为 undefined . 在Electron已经加载了其内部预置脚本和它准备加载主进程或渲染进程的时候触发. 当node被完全关闭的时候,它可以被预加载脚本使用来添加(原文: removed)与node无关的全局符号来回退到全局 范围: 1. // preload.js 2. var _setImmediate0 码力 | 203 页 | 2.72 MB | 1 年前3JavaScript Promise迷你书(中文版)
我们可以向这个预设了抽象化异步处理的promise对象, 注册这个promise对象执行成功 时和失败时相应的回调函数。 这和回调函数方式相比有哪些不同之处呢? 在使用promise进行一步处理的时候,我们 必须按照接口规定的方法编写处理代码。 也就是说,除promise对象规定的方法(这里的 then 或 catch )以外的方法都是不可以使 用的, 而不会像回调函数方式那样可以自己自由的定义回调函数的参数,而必须严格 当了这个职责(处理正常和异常的情 况),所以 在resolve方法中只传一个response参数是没有问题的。 接下来我们来看一下 reject 函数。 XHR中 onerror 事件被触发的时候就是发生错误时,所以理所当然调用 reject 。 这里 我们重点来看一下传给 reject 的值。 发生错误时要像这样 reject(new Error(req.statusText)); ,创建一个Error对象后再将具体 15 console.log(value); }); Promise.resolve作为 new Promise() 的快捷方式,在进行promise对象的初始化或者编写 测试代码的时候都非常方便。 Thenable Promise.resolve 方法另一个作用就是将 thenable 对象转换为promise对象。 ES6 Promises里提到了Thenable这个概0 码力 | 112 页 | 1010.02 KB | 1 年前3Go Web编程
Mac 安装 访问下载地址,32位系统下载go1.0.3.darwin-386.pkg,64位系统下载go1.0.3.darwin-amd64.pkg,双击下载文件, 一路默认安装点击下一步,这个时候go已经安装到你的系统中,默认已经在PATH中增加了相应的~/go/bin,这个时 候打开终端,输入go 看到类似上面源码安装成功的图片说明已经安装成功 如果出现go的Usage信息,那么说 windows-386.msi,64位系统下载go1.0.3.windows-amd64.msi。双击打开下载 的文件,一路按照默认点击下一步,这个时候go已经安装到你的系统中,默认安装之后已经在你的系统环境变量中加 入了c:/go/bin,这个时候打开cmd,输入go 看到类似上面mac安装成功的图片说明已经安装成功 如果出现Go的Usage信息,那么说明Go已经安装成功了;如果出现该命 GOPATH=/home/apple/mygo Windows 设置如下,新建一个环境 变量名称叫做GOPATH: sh GOPATH=c:\mygo GOPATH允许多个目录,当有多个目录时,请注意分隔符,多个目录 的时候Windows是分号,Linux系统是冒号,当有多个GOPATH时,默认会将go get的内容放在第一个目录下 以上 $GOPATH 目录约定有三个子目录: src 存放源代码(比如:.go0 码力 | 295 页 | 5.91 MB | 1 年前3Laravel 5.6 中文文档
配置中设置 一个给定主机来匹配给定环境。 访问配置值 你可以使用全局辅助函数 config 在应用代码的任意位置访问配置值,配置值以文件名+“.”+配置项的方式进行访问,当配置项没有被配置的时候返回 默认值: $value = config('app.timezone'); 如果要在运行时设置配置值,传递数组参数到 config 方法即可: config(['app.timezone' 框架作者的想法,不过对于国内开发者,尤其是 PHP 开发者来说,models 目录用于存放与数据库交互的模型类应该没有什么异议, 而业务逻辑应该放到 services 这种目录之下。所以推荐大家在生成模型类的时候指定生成到 app/Models 目录下: php artisan make:model Models/Test 根目录 App 目录 app 目录包含了应用的核心代码,注意不是框架的核心代码,框架的核心代码在 用发送命令的方式。Console 目录包含了所有开发者编写的 Artisan 命令,Http 目录包含了控制器、中间件和请求等。 其他目录会在你通过 Artisan 命令 make 生成相应类的时候自动生成到 app 目录下。例如,app/Jobs 目录直到你执行 make:job 命令生成任务类时 才会出现在 app 目录下。 注:app 目录中的很多类都可以通过 Artisan 命令生成0 码力 | 377 页 | 14.56 MB | 1 年前3Laravel 5.3 中文文档
oquent\Model; class Post extends Model { use Searchable; } trait 被添加到模型之后,当保存模型实例的时候其信息将会被同步到搜索索引: $order = new Order; // ... 本文档由 Laravel 学院(LaravelAcademy.org)提供 Laravel ..'); }); 更多详情请查看完整的 Artisan 文档。 $loop 变量 注:Laracasts 中有关于此特性的免费视频教程。 当我们在 Blade 模板中循环遍历的时候,$loop 变量将会在循环中生效。通过该变量可以访问很 多有用的信息,比如当前循环索引值,以及当前循环是第一个还是最后一个迭代: @foreach ($users as $user) 中文学习资源 15 调用了 Route::auth 方法。 密码重置邮件 密码重置邮件现在使用新的通知功能(Laravel Notifications),如果你想要在发送密码重置链接的 时候自定义通知发送,需要重写 Illuminate\Auth\Passwords\CanResetPassword trait 上的 sendPasswordResetNotification 方法。0 码力 | 691 页 | 9.37 MB | 1 年前3Laravel 6.0 中文文档
补充,LazyCollection 底层基于 PHP 的生成器实现,适用于处理 大型数据集。 例如,假设你的应用需要处理 GB 级别的日志文件,并使用 Laravel 的集合方法来解析日志,这个时候将整个日志文件一次性读取到内存 显然是不合适的,这个时候懒集合类就派上用场了,它可以每次只读 取文件的一小部分到内存: 本文档由学院君提供 学院君致力于提供优质 Laravel 中文学习资源:https://xueyuanjun 题和对该问题的明确说明,还要包含尽可能多的相关信息以及论证该 问题的代码样板,缺陷报告的目的是为了让你自己和其他人更方便的 重现缺陷并对其进行修复。 记住,缺陷报告被创建是为了其他人遇到同样问题的时候能够和你一 起合作解决它,不要寄期望于缺陷会自动解决抑或有人跳出来修复 它,创建缺陷报告是为了帮你自己和别人走上修复问题之路。 Laravel 源码通过 Github 进行管理,每一个 Laravel 'password', ], ], ]; 访问配置值 你可以使用全局辅助函数 config() 在应用代码的任意位置访问配 置值,配置值通过配置文件名+“.”+配置项的方式进行访问,当配置 项没有被配置的时候返回默认值: // app 是配置文件名,timezone 是配置项,配置项有多个层级(数组) 的话,使用 . 进行分隔 本文档由学院君提供 学院君致力于提供优质 Laravel 中文学习资0 码力 | 1442 页 | 14.66 MB | 1 年前3CmlPHP v2.x 开发手册
\Cml\Lock\Redis::class); //可选。绑定要用到视图引擎内置以下5种 以view_为前缀,用的时候不用带前缀如使用view_html视图 服务: \Cml\View::getEngine('html'); //\Cml\View::getEngine();不传类型的时候,使用的引擎可在配置文件中配置 'view_render_engi ne' => 'Html'默认为view_html gleton('cml_environment', \Cml\Service\Environment:: class); cli proxxx/Config/cli 为通过命令行运行的时候加载的配置文件存放目录 development proxxx/Config/development 为开发环境加载的配置文件存放目录 product 为正式环境加载的配置文件存放目录 'cache_expire' => 3600, //是否记录执行慢的sql语句。只针对mysql有效。这个不能长期开,只能要分析sql性能的时候比如 只开个5会钟有一定的log后就应该关掉。默认为false。 //为整形的时候则为执行时间大于这个时间的sql都记录到log下 比如配置为1则为执行超过1s的sql 都记录到 notice.log里 190 码力 | 143 页 | 1.54 MB | 1 年前3CmlPHP v2.x 开发手册
s); //可选。绑定要用到视图引擎内置以下5种 以view_为前缀, 用的时候不用带前缀如使用view_html视图服务: \Cml\View::getEngine('html'); //\Cml\View::getEngine();不传类型的时候,使用的引擎 可在配置文件中配置 'view_render_engine' => 'Html'默认为 >singleton('cml_environment', \Cml\Service\Environment::class); cli proxxx/Config/cli 为通过命令行运行的时候加载的配置文件 存放目录 development proxxx/Config/development 为开发环境加载的配置文件存放 目录 product 为正式环境加载的配置文件存放目录 'cache_expire' => 3600, //是否记录执行慢的sql语句。只针对mysql有效。这个不能 长期开,只能要分析sql性能的时候比如只开个5会钟有一定的log后就 应该关掉。默认为false。 //为整形的时候则为执行时间大于这个时间的sql都记录到 log下 比如配置为1则为执行超过1s的sql都记录到 notice.log里 'log_slow_sql'0 码力 | 245 页 | 720.67 KB | 1 年前3
共 767 条
- 1
- 2
- 3
- 4
- 5
- 6
- 77