默认分类

Nginx下简单实现MediaWIKI的伪静态

最近要写一个说明文档,于是就用上了MediaWIKI。 这东西默认情况下,文章地址格式为http://domain/index.php?title=标题。 如果要改成使用http://domain/标题 的方式访问,rewrite规则明显有点繁琐,除非使用 if -e判断文件是否存在,否则正则表达式的.*会把一切东西,包括静态资源也匹配进去。 想了想,于是决定把文章的地址都变成子目录的形式:http://domain/wiki/标题,这样的话伪rewrite规则就变得简单多了,对/wiki进行匹配即可,仅需一行代码:

然后修改M […]

Read more 4 Comments
操作系统, 服务器

开启OpenVZ的二级配额(允许小鸡使用配额)

edquota

OpenVZ,一个非常强大的虚拟化技术,性能损失近乎零(不超资源上限的情况下),因此也是我最喜欢的一种虚拟化技术。 最近在给OpenVZ安装某个程序,由于是多用户,因此需要使用Linux的配额(quota)功能,但是执行edquota -u 用户名时,提示无文件系统支持配额。   由于OpenVZ虚拟出来的VPS并不是独立一个分区的,甚至可以说只是一个简简单单的chroot,那就意味着无法简单地通过mount为usrquota和grpquota来开启配额支持。 看了下相关的官方文档,发现OpenVZ有二级配额功能。 首先关闭VPS的电源: [crayon-6740e82bcaf481 […]

Read more 11 Comments
服务器, 运营维护

Linux下简单实现单用户资源限制思路

Linux是一个多用户&任务系统。如何防止某些用户占用服务器大量资源,避免影响其他用户的正常使用,是一个永不过时的话题。 很多人采用了国外的Cloudlinux,不过几十元一个月的授权费对于我这样一个学生来说,压力有点大。 前几个星期,我的某个服务器上某个用户被CC了,该用户的HTTPD进程占用了服务器大量资源,最后只能硬重启解决。 从那天开始,如何免费实现限制单用户的资源成为了我的一个迫不及待要解决的问题。 一:获取用户进程以及资源使用信息 Linux下能查看各用户的进程以及资源占用情况的命令有ps和top。其中top是交互式的,不太适合文本处理,因此要选用ps。 ps常用的参数有以 […]

Read more 2 Comments
服务器, 未分类, 运营维护

一个高频率的HTTP服务监控Shell Script

Nginx/Apache之类的长期运行,无法保证在遇到各种突发情况进程不会死掉。如果这时候又出门在外,一时间无法操作,那网站岂不是要宕机数个小时? 明显我无法接受这事情。于是一个简简单单的监控HTTP服务的Shell Script就出来了。

真的简简单单。 可见我并没有采用cron功能,毕竟这东西正常情况最低频率只能一分钟了。 restart那个function是http服务不正常后执行的,可以自行增添,删减,替换。sleep后面跟着的是秒数,在这里简单理解成监控频率吧。wget处,-t参数指的是尝试次数,这里我写了一次。 执行 […]

Read more 4 Comments
服务器, 未分类, 运营维护

Apache:只有访客IP的日志格式

前一篇文章:Nginx日志配合iptables自动封禁IP,提供了一个nginx只有访客IP的日志格式。 这里也顺便提供一个Apache的只有访客IP的日志格式:

把上面的一行代码放到apache的配置文件中去。 然后到站点配置文件中添加:

${APACHE_LOG_DIR}改成存放日志的路径。 配合前一篇文章的Shell Script,即可实现防CC。

Read more 3 Comments