Inspirer

文章列表

为什么重启后 /run 下的文件不在了?

摘自 https://serverfault.com/questions/546966/whats-removing-stuff-from-var-run-at-reboots-from-a-fedora-machine

The software should define what directories it needs in /run (which replaced /var/run in Fedora 15) by placing a configuration file in /usr/lib/tmpfiles.d. During the boot process, systemd-tmpfiles populates /run based on that confguration.

其中解释了 /run 是挂载在临时文件的系统里的,即在系统启动后,添加在里面的数据、文件都是写入内存的,因此重启后自然不存在。

懒得去翻的,本文直接给出一个便于快速查阅的方案。

MySQL5.7 的编译安装

一直嫌弃 MySQL 的编译安装,原因很简单,依赖复杂、容易出错,总之就是麻烦。但这些天由于需要必须编译安装,被迫阅读相关文档,发现现在的 MySQL 安装变得十分简单和容易。

直接开始吧。

一切从必要依赖开始。

yum install -y gcc gcc-c++ ncurses-devel perl

本文中系统为 CentOS 7,不同系统的软件包管理器可能用法不同,但需求类似,请准备好 gcc gcc++ ncurses 及 perl 相关编译器或依赖库即可。

PHP 7 的编译安装

之前有一篇 《PHP 7 开发版本编译安装》,不过那时候连 RC 版都不是,昨日正式版已经在 Github 上发布(参见: https://github.com/php/php-src/releases) ,于是乎迫不及待的在此分享其编译安装的过程。

其实 php 的编译安装相当简单,且每个版本差异不大,正因为如此之前版本的编译安装过程也可以参考,当然,需要注意的是,每个版本的编译参数存在部分差异,以 ./configure --help 中具体描述的编译配置参数为准。

本文中系统环境为 CentOS 7 64bit,如使用其他系统环境的,请注意在某些 依赖安装环节 的差异。

HTTP 中的幂等操作

在做 web 端开发,常常和各种请求打交道。HTTP 协议中,常见的请求不外乎是 GETPOSTPUTDELETEHEAD。其中,GET、PUT、DELTE、HEAD 都是幂等操作,而 POST 则不是。那么什么是幂等操作?其存在的意义和网站的设计与架构有什么关系呢?

IE 死活无法保存 cookie 的问题(去屎吧 IE)

近日在公司遇到了一件奇葩问题 —— IE 死活无法保存 Cookie!

在平日一切正常,那天就出了这么一出问题,可问题是前两天还正常运行呢。Cookie 无法保存带来的一系列问题让人无比抓狂,但就是找不清楚问题在哪(好吧我承认对 IE 真的不了解)。按道理,并没有限制 IE 的 Cookie 功能,没有设置什么,也没有改动什么,而且其他网站依旧能够正常保存 Cookie。

问题原因到底是啥呢?

解决 mount 挂载 windows 共享目录导致出现的内存无法分配问题

原文转载自:http://jlcoady.net/windows/how-to-resolve-mount-error12-cannot-allocate-memory-windows-share 《How to Resolve “mount error(12): Cannot allocate memory” on a Windows Share》

原文的中说的步骤很简单。

  1. Set “HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\LargeSystemCache” to “1″. 即编辑注册表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\LargeSystemCach 这一项的值,设置为 1

  2. Set “HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\Size” to “3″. 编辑注册表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\Size 这一项的值,设置为 3

  3. Restart the “server” service. 重启名为 Server 的服务即可。

PHP Cli 程序开发

PHP 在大多数人心目中主要是做 web 开发的,但实际上从 PHP 4.2.0 起就开始支持 Server Application Programming Interface 即服务端应用编程接口,也称其为 Command Line Interface,也就是我们常说的 CLI。这使得 PHP 开发外壳应用(Shell)变为可能。其实这个功能自 PHP 5 起变得越来越易用,这对于 PHP 应用于更多情景变得可能,比如多进程爬虫、服务端守护进程、自动化部署工具等等,我们如今使用的 composer 就是典型的 PHP CLI 程序。

本文主要内容就是围绕 PHP CLI (下文简称 CLI) 进行讲述,并分享一个十分强大且易用的 symfony 组件 —— console (命令行)组件。

Windows 与 linux 之间的文件共享

鄙人不喜欢 linux 系统作为开发环境,毕竟 linux 是一个相对反人类的系统。不过 linux 对于生产环境的友好注定了其拥有丰富的库作为各种组件的依赖支持。在开发测试时,需要使用一些仅能跑在 linux 上的库的确让一个长期在 windows 下工作的人感到十分难过,在没有使用 OSX 环境的情况下,我需要一种简单的解决方案。

实际上,建立虚拟机,共享主机与虚拟机之间的文件不失为一种粗糙的解决方案。在 windows 创建、编辑、修改,同时在虚拟机上测试、运行代码。

那么如何建立两者的连接?