xubuntu锁屏后唤醒鼠标不见如何解决技术
xubuntu 桌面 xfce 在锁屏后唤醒经常不见了鼠标,只能使用 tab 来切换任务。找到了解决办法,如下:
sudo apt-get update sudo apt-get dist-upgrade
使用上面的命令强制更新系统后重启。然后 ctrl+alt+f1 切换到终端,然后 ctrl+alt+f7 切换到桌面,鼠标就出来了。xfce 桌面 bug 太多,实在是很不稳定,一般几天不关机就得重启。
代码分享之合法校验过滤编辑器提交的HTML内容技术
分享一段代码,用最简单的函数实现前端编辑器提交过来的内容的合法性校验,允许一般的安全性 HTML 标签,对属性做了安全校验,属性只允许出现在部分 HTML 标签中,如 a、img、span、font。除了非常安全的属性外,还允许了 style 属性,style 属性其实也有一定的风险,容易造成页面样式错乱,但是大部分编辑器生成的 HTML 还是包含 style 属性的。对 style 属性里面的 CSS 没有再做分析,以后有时间再补充。
代码中使用了 Closure,因此需要 PHP 5.3 以上的版本才能跑。另外里面用到了函数 array_get,这个不是 PHP 内置函数,使用的时候需要注意修改。
MySQL数据库表空间大小查询SQL技术
使用命令查看 MySQL 的各种信息,大都数都在 information_schema 表里面。
MySQL 数据库表空间大小情况查询 SQL 语句:
SELECT CONCAT(ROUND(SUM(data_length/1024/1024),2), 'MB') as data_length, CONCAT(ROUND(SUM(index_length/1024/1024),2), 'MB') as index_length FROM information_schema.tables WHERE table_schema = 'lmlphp' AND table_name = 'lmlphp_table';
使用PHP字符串处理mb系列函数注意事项技术
PHP 的 mbstring 系列函数在使用的时候需要设置内部编码,如果没有设置,则默认跟随系统编码。关于 mbstring 系列函数出现乱码问题,网上的很多被转载的文章大都说是没有安装 mbstring 扩展导致。如果没有安装 mbstring 扩展,报错的就是 Undefined function,而不是乱码的问题。
很多程序在开发的时候,由于程序员的经验不够丰富,开始运行的时候没有任何问题,一旦迁移环境,可能系统就会出各种问题,甚至系统崩溃。这些都是由于在使用 mbstring 系列函数的时候没有初始化编码所致,开发和首次运行的机器上系统默认编码是 UTF-8,和程序运行的时候编码一致,问题没有被触发,如果迁移机器,或者在 Windows 平台运行,问题可能就出来了。
一张图看懂HTTP协议Cookie多级域名优先级技术
关于 Cookie 的一些知识,您不得不知道。Cookie 是基于同源策略的,这点和 Ajax 有点相似。
上图表明,在多级域名,第四级域名 1.test.home.may 下获取的 TestCookie 的值竟然是 .test.home.may 域名下的。按照一般人的常识,1.test.home.may 应该是更加接近被访问的域名,这点是一个坑啊,如果不注意,会带来站点的各种问题,比如无法登录啊。该怪 HTTP 协议还是 Apache 服务器 还是 Nginx 服务器呢?
如果每一级域名种植 Cookie 都是指定域名的,也就是在浏览器的审查元素或者 FireBug 里面会显示点前缀的域名,优先级是按照一般人的常识的,这里就不再截图验证了,有点像极了 CSS 的优先级,不过 CSS 的难度要大一些。