December 21, 2010
nginx下实现浏览目录的功能
"nginx默认是不允许列出整个目录的。如需此功能,需要修改nginx的配置文件.方法如下: 打开nginx.conf文件,在location server 或 http段中加入 autoindex on; 另外两个参数最好也加上去:\nautoindex_exact_size off; 默认为on,显示出文件的确切大小,单位是bytes。 改为off后,显示出文件的大概大小,单位是kB或者MB或者GB\nautoindex_localtime on; 默认为off,显示的文件时间为GMT时间。 改为on后,显示的文件时间为文件的服务器时间\n详细参照: http://wiki.nginx.org/NginxChsHttpAutoindexModule\n如果想希望目录列表支持header,footer则可以安装三方插件: http://wiki.nginx.org/NginxNgxFancyIndex\n或者直接修改nginx源码,如 http://docs.linuxtone.org 即为简单修改NGINX源码得到的效果.\n来源: …"
December 20, 2010
Nginx中文件缓存设置
"十三 Nginx Cache 服务配置\n如果需要将文件缓存到本地,则需要增加如下几个子参数:\nproxy_store on 用来启用缓存到本地的功能\nproxy_store_access user:rw group:rw all:rw;\nproxy_temp_path 缓存目录;\n在经过上一步配置之后,虽然文件被缓存到本地磁盘上,但每次请求仍会向远端拉取文件,为了避免去远端拉取文件,必须修改proxy_pass代码:\nif ( ! -e $request_file) {\nproxy_pass http://freeke;\n}\n即修改为有条件地去执行proxy_pass,这个条件就是当的文件在本地的proxy_temp_path指定的目录下不存在时,再向后端拉取.\n摘自:Nginx指南"
December 20, 2010
[教程]FreeBSD+nginx下Awstats安装(原创)
"一.安装\n注:我安装的时候为7.0的,这篇文章本人没有进行测试\n#cd /usr/ports/www/awstats #make install\n跟 Apache HTTP Server(以下称 Apache)不同的是,Apache 可以将日志输出通过管道的方式进行重新定向,依此来进行自动的日志切割。Nginx 在现今版本上还没能跟 Apache 一样,通过%YY等参数按日期分批创建日志,但是通过给 nginx 进程发送一个特定的信号,可以使 nginx 重新生成日志文件。我们可以定期执行一个 Shell 脚本来切换日志,重新命名或转移,具体的脚本如下:\n# mv /opt/nginx/logs/access.log /opt/nginx/logs/access_`date +%Y%m%d`.log # killall –s USR1 nginx\t#使用USR1参数通知Nginx进程切换日志文件 将以上脚本内容保存为文件名为 logcron.sh 存到自定的目录中,例如 /usr/local/etc/nginx/logcron.sh 使用 Crontab 让该脚本程序在每天晚上 11 …"
December 20, 2010
使用 awstats 分析 Nginx 的访问日志
"auth_basic “admin”; #用户名\nauth_basic_user_file /opt/ngx/conf/admin.pass; #密码包路径\n这篇文章内容部分有问题的,大家用的时候注意一下.特别是nginx的虚拟主机采用apache密码认证那一块的\nauth_basic \u0026#34;admin\u0026#34;; #用户名 /opt/ngx/conf/admin.pass; #密码包路径 正解的格式应该为: auth_basic \u0026#34;admin\u0026#34;; #用户名 auth_basic_user_file /opt/ngx/conf/admin.pass; #密码包路径 **主要目录有三个:**1./data/web #虚拟主机根目录 2./data/webroot/awstats #开始统计分析Awstats 日志(分析前需要将运行日志切割脚本 logcron.sh),\n分析脚本为:\n#/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update …"
December 20, 2010
php中is_file和file_exists效率的比较
"下面是测试代码,分别循环10000次:\n$start_time = get_microtime();\nfor($i=0;$i\u0026lt;10000;$i++)\n{\nif(is_file(‘url.txt’)) {\n//do nothing;\n}\n}\necho ‘is_file耗时–\u0026gt;’.(get_microtime() – $start_time).'\n’;\n$start_time = get_microtime();\nfor($i=0;$i\u0026lt;10000;$i++)\n{\nif(file_exists(‘url.txt’)) {\n//do nothing;\n}\n}\necho ‘file_exits–\u0026gt;’.(get_microtime() – $start_time).'\n’;\nfunction get_microtime()//时间\n{\nlist($usec, $sec) = explode(‘ ‘, microtime());\nreturn ((float)$usec + (float)$sec);\n}\n?\u0026gt;\n文件不存在时,结果为:\nis_file耗 …"
December 20, 2010
50个非常有用的PHP工具
"PHP是使用最为广泛的开源服务器端脚本语言之一,当然PHP并不是速度最快的,但它却是最常用的脚本语言。这里有50个有益的PHP工具,可以大大提高你的编程工作: 调试工具 Webgrind Xdebug Gubed PHP Debugger DBG PHP_Debug PHP_Dyn MacGDBp 测试和优化工具 PHPUnit SimpleTest Selenium PHP_CodeSniffer dBug PHP Profile Class 文档工具 phpDocumentor PHP DOX 安全工具 Securimage :验证码工具。 Scavenger PHP-IDS Pixy :代码检查工具。 图形处理 PHP/SWF Charts pChart – a chart-drawing PHP library WideImage MagickWand For PHP 代码优化 PHP_Beautifier PHPCodeBeautifier GeSHi – Generic Syntax Highlighter 版本控制系统 Phing xinc 有用的拓展, …"
December 18, 2010
dos下的延时命令
"rem 等待5分钟 ping -n 300 127.1 \u0026gt;nul 2\u0026gt;nul echo 时间到\n或者\nping 127.0.0.1 -n 5000\u0026gt;nul"
December 18, 2010
FreeBSD系统时间调整
"先设置时区:\n# tzsetup\n再与国家授时中心服务器对时:\n# ntpdate 210.72.145.44\n以后自动同步:\n首先修改 /etc/rc.conf 添加\nntpd_enable=”YES”\n到最后一行。\n然后配置对时服务器:\n# vi /etc/ntp.conf\nserver 210.72.145.44 prefer server 159.226.154.47 server 127.127.1.0 fudge 127.127.0.1 stratum 5 restrict default ignore restrict 127.0.0.0 mask 255.0.0.0 restrict 192.168.0.0 mask 255.255.255.0 noquery nopeer notrust restrict 210.72.145.44 noquery restrict 159.226.154.47 noquery driftfile /var/db/ntpd.drift\n#/var/run/xntpd.pid\n参考:\nFreeBSD系统时间调整让FreeBSD使 …"
December 17, 2010
PS 命令详解
"/bin/ps\nps 是显示瞬间行程的状态,并不动态连续;如果想对进程运行时间监控,应该用 top 工具。\nkill 用于杀死进程。\nps 的参数说明\nl 长格式输出;\nu 按用户名和启动时间的顺序来显示进程;\nj 用任务格式来显示进程;\nf 用树形格式来显示进程;\na 显示所有用户的所有进程(包括其它用户);\nx 显示无控制终端的进程;\nr 显示运行中的进程;\nww 避免详细参数被截断;\n-A 列出所有的行程 -w 显示加宽可以显示较多的资讯 -au 显示较详细的资讯 -aux 显示所有包含其他使用者的行程\n-e 显示所有进程,环境变量 -f 全格式 -h 不显示标题 -l 长格式 -w 宽输出 a 显示终端上地所有进程,包括其他用户地进程 r 只显示正在运行地进程 x 显示没有控制终端地进程\n我们常用的选项是组合是 aux 或 lax,还有参数 f 的应用。\nO[+|-] k1 [,[+|-] k2 [,…]] 根据SHORT KEYS、k1、k2中快捷键指定地多级排序顺序显示进程列表. 对于ps地不同格式都存在着默认地顺序指定.这些默认顺序可以被用户地指定所覆盖.在这里面“+”字 …"
December 17, 2010
linux中关于crontab的日志存放
"默认情况下,crontab中执行的日志写在/var/log下,如:\n#ls /var/log/cron*\n/var/log/cron /var/log/cron.1 /var/log/cron.2 /var/log/cron.3 /var/log/cron.4\ncrontab的日志,当crond执行任务失败时会给用户发一封邮件.如果在服务器上发现一个任务没有正常执行,而crond发邮件也失败.通过看mail的日志,看是否是磁盘空间不够造成的\n将cornd错误输出和标准输出日志都指向自定义的日志文件:\n0 6 * * * $HOME/fro_crontab/createTomorrowTables\u0026raquo;$HOME/for_crontab/mylog.log 2 \u0026gt;\u0026amp;1\nFreeBSD下cron日志文件为 /var/log/cron.\n对于crontab的详细介绍请参考:"