freebsd常用状态信息命令
systat 实时查看各种信息
systat -pigs 猪头进程占用CPU systat -iostat 硬盘IO systat -swap 交换分区 systat -mbufs 网络缓冲区 systat -vmstat 虚拟内存 systat -netstat 网络 systat -icmp ICMP协议 systat -ip IP协议 systat -tcp TCP协议 systat -ifstat 网卡
显示PCI总线设备信息
pciconf -lv
显示内核加载的模块
kldstat -v
显示指定模块
klsdstat -m ipfilter
即插即用设备
pnpinfo
显示设备占用的IRQ和内存地址
devinfo -u cpu sysctl -a|grep cpu sysctl -a|grep sched 查看使用的调度器
虚拟内存
vmstat
硬盘
gstat systat -iostat iostat
网卡
ifconfig systat -ifstat
网络
netstat sockstat tcpdump trafshow
freebsd的观察系统状况命令systat
systat [-display] [更新-时间]
display system statistics 观察系统状况
-display The - flag expects display to be one of: icmp, icmp6, ifstat, iostat, ip, ip6, mbufs, netstat, pigs, swap, tcp, or vmstat. These displays can also be requested interactively (without the ``-'') and are described in full detail below.
例如
%systat -vm 1 1 users Load 5.04 4.35 3.92 Mar 13 23:58 Mem:KB REAL VIRTUAL VN PAGER SWAP PAGER Tot Share Tot Share Free in out in out Act 2749488 20628 10344444 60420 167684 count 2 All 2792768 25576 14629708 76304 pages 4 Proc: Interrupts r p d s w Csw Trp Sys Int Sof Flt 21 cow 8236 total 2 140 471 38k 9180 135k 225 63k 6927 6135 zfod ata1 irq15 ozfod 225 mpt0 irq26 34.4%Sys 3.1%Intr 59.3%User 0.3%Nice 2.8%Idle %ozfod 4005 cpu0: time | | | | | | | | | | | daefr 4006 cpu1: time =================++>>>>>>>>>>>>>>>>>>>>>>>>>>>>>- 2162 prcfr 1312 dtbuf 7597 totfr Namei Name-cache Dir-cache 100000 desvn 9460 react Calls hits % hits % 53487 numvn pdwak 22102 21938 99 24392 frevn pdpgs intrn Disks da0 da1 pass0 pass1 501792 wire KB/t 15.88 5.75 0.00 0.00 2965052 act tps 241 7 0 0 331332 inact MB/s 3.73 0.04 0.00 0.00 143876 cache %busy 38 3 0 0 23808 free
查看是那头猪头进程在消耗cpu
%systat -pigs /0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10 Load Average ||||||||||||| /0% /10 /20 /30 /40 /50 /60 /70 /80 /90 /100 njava php-cgi XXX njava php-cgi X
Linux tail 命令详解
用途
从指定点开始将文件写到标准输出。使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容。
语法
标准语法
tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ]
要以逆序显示行
tail [ -r ] [ -n Number ] [ File ]
描述
tail 命令从指定点开始将 File 参数指定的文件写到标准输出。如果没有指定文件,则会使用标准输入。 Number 变量指定将多少单元写入标准输出。 Number 变量的值可以是正的或负的整数。如果值的前面有 +(加号),从文件开头指定的单元数开始将文件写到标准输出。如果值的前面有 -(减号),则从文件末尾指定的单元数开始将文件写到标准输出。如果值前面没有 +(加号)或 -(减号),那么从文件末尾指定的单元号开始读取文件。
Number 变量用于确定计数的起点的单元类型由 -b、-c、-k、-m 以及 -n 标志确定。如果没有指定其中的任何一个标志,那么 tail 命令就会读取指定文件的最后十行,并将其写到标准输出。这与在命令行输入 -n 10 是相同的。
-m 标志在单字节和双字节字符环境中提供了一致的结果。当输入是包含多字节字符的文本文件时应谨慎使用 -c 标志,因为产生的输出可能不从字符边界开始。
标志
-b Number
从 Number 变量表示的 512 字节块位置开始读取指定文件。
-c Number
从 Number 变量表示的字节位置开始读取指定文件。
-f
如果输入文件是常规文件或如果 File 参数指定 FIFO(先进先出),那么 tail 命令不会在复制了输入文件的最后的指定单元后终止,而是继续从输入文件读取和复制额外的单元(当这些单元可用时)。如果没有指定 File 参数,并且标准输入是管道,则会忽略 -f 标志。tail -f 命令可用于监视另一个进程正在写入的文件的增长。
-k Number
从 Number 变量表示的 1KB 块位置开始读取指定文件。
-m Number
从 Number 变量表示的多字节字符位置开始读取指定文件。使用该标志提供在单字节和双字节字符代码集环境中的一致结果。
-n Number
从 Number 变量表示的行位置开始读取指定文件。
-r
从文件末尾以逆序方式显示输出。-r 标志的缺省值是以逆序方式打印整个文件。如果文件大于 20,480 字节,那么 -r 标志只显示最后的 20,480 字节。
-r 标志只有与 -n 标志一起时才有效。否则,就会将其忽略。
退出状态
该命令返回下列的退出值:
0
成功完成。
>0
出现错误。
示例
要显示 notes 文件的最后十行,输入:
tail notes要指定从 notes 文件末尾开始读取的行数,输入:
tail -n 20 notes
要从第 200 字节开始,每次显示一页 notes 文件,输入:
tail -c +200 notes | pg
要跟踪文件的增长,输入:
tail -f accounts
这显示 accounts 文件的最后十行。tail 命令继续显示添加到 accounts 文件中的行。显示会一直继续,直到您按下 Ctrl-C 按键顺序来停止。
文件
包含 tail 命令。
/usr/bin/tail
discuz后台设置对seo的影响
1 首页文件名设置,统一首页URL
解决http://www.njava.com/和http://www.njava.com/index.php 对se权重的影响
全局>站点信息>首页文件名
设为论坛的主域名或主目录。
以njava.com为例,
网站URL是http://www.njava.com/,
那么这个首页文件名也设为http://www.njava.com/,默认是index.php
这样,站内到主页的链接和外部链接就一致了。
好处:
对于相同内容的两个页面,SE会选择一个权重高的做为首选,给予高的排名,显示在搜索结果中,而另一个排名很低或不收录。这一过程需要一定的时间判断。貌似这样也没有什么问题,但是,却分散了权重。
像上面的例子,http://www.njava.com/和http://www.njava.com/index.php 两个页面虽然是同一个内容,外链一般链接到主域名上,内链却链接到index.php文件上,虽然都有了很高的PR,但同样的内容,把链接分散到两个URL上,分散了权重,没有必要。
二 为了SEO,不要选择个人资料页面(space.php)静态化
1.个人资料页面都是雷同的东西。很少有人会写自我介绍,所以造成了大量内容相似的网页。
2.默认情况下是不允许游客访问个人资料页面的,所以会得到的提示信息页,discuz又没有对这类页面加上meta robots 禁止收录,这就产生很多相同内容的页面。
discuz修改版块列表页,为帖子内容页生成唯一地址
帖子页的URL形式有很多,我们可以通过修改viewthread.php和archive给内容页上canonical URL,都指向静态URL形式来集中权重。
但是,这个伪静态地址也不是唯一的:thread-{tid}-{page}-(forumpage).html,由内容页URL组成可见最后一段数字是代表帖子在这个版块列表的第几页,当新帖子不断增加,老帖会被挤到第二页,第三页…这样它的URL就会不断地变化。
解决方法:
方法:修改forumdisplay.php
将$extra = rawurlencode(“page=$page$forumdisplayadd”);
改为$extra = rawurlencode(“page=1$forumdisplayadd”);
这样,最后一段固定为1,但有个缺点,用户从这个帖子只能返回列表页的第一页了。
discuz seo悄悄地在改变:上面的问题还是以观察收录结果是发现的,不过discuz7.0的global.func.php文件,发现对帖子页进行静态化地址替换的函数有所变化
function rewrite_thread($tid, $page = 0, $prevpage = 0, $extra = '') { return '<a href="thread-'.$tid.'-'.($page ? $page : 1).'-' .($prevpage && !IS_ROBOT ? $prevpage : 1).'.html"'.stripslashes($extra).'>'; }
也就是说,现在discuz会针对搜索引擎,把最后一段固定生成为1来解决这个问题。虽然是针对用户和搜索引擎分别处理,但内容都是一样的,并没有欺骗,应该还是没问题的。
另外,在伪静态替换中发现对robots进行了特殊处理,说明动态地址没有处理这个问题。
discuz给redirect.php做301跳转
类似redirect.php?tid=7&goto=lastpost这种形式URL的页面的子内容和thread-1-1-1.html一样的,但URL形式不一样,SE会当成重复内容。
这种URL形式会出现在主页、版块列表页的最后发表或最后回复位置,discuz7以前版本的上一主题、下一主题等也是此种形式的URL,现在虽然没有,但在代码中还能找到那些参数。
为什么不禁止这种URL形式的索引?
1.主要是不能控制别人链接到这种形式,如果禁止索引这种形式的URL就浪费了链接,所以要做301跳转,把链接和权重转移到标准的静态形式。
2.链接形式出现在首页,不禁止或许可以加快录
给redirct.php做301跳转
有的情况下程序要查找才能得到要显示的tid,所以只能修改程序,用php代码实现301跳转。
打开 redirect.php 文件,将 require_once DISCUZ_ROOT.’./viewthread.php’; 替换为
header("HTTP/1.1 301 Moved Permanently"); header( "Location: thread-{$tid}-1-1.html" ); exit();
文件中共有四处,都修改完就可以访问论坛,检查下效果了
discuz加canonical URL标签,规范化网址
Discuz的网址规范化有很多问题,即同样的内容,有着好多不同的URL。下面使用canonical URL TAG新标准来处理这些问题。
一,给viewthread.php页加canonical URL
可以发现这种动态的链接形式最多了,有不同的参数但内容一样,当然现在的SE能够处理这些问题,但但很难判断首选显示URL方式,或者当他们都有返回链接时,不能集中权重。为了解决类似的重复网页问题,googel,yahoo,live,ask.com都宣布支持一个新的标签属性,以把链接和权重都集中到一个首先的URL上。
1.给viewthread.php加canonical URL标签,指定帖子的静态地址为首选版本。
修改viewthread.php文件,在$page = max($page, 1);上面(程序调用包含文件结束),加一行$extrahead .='<link rel=”canonical” href=”thread-‘ .$tid. ‘-1-1.html” />’;
2.给打印页加canonical tag
虽然打印页viewthread.php?action=printable…..也是调过这个程序生成数据,但用了不同的模板,要把变量$extrahead 加进去,修改tmplates\default\viewthread_printable.htm
在<head>部分<title>的下面加一行: $extrahead
二.给forumdisplay.php加canonical tag
在include template(‘forumdisplay’);上加一行:
$extrahead .='<link rel=”canonical” href=”forum-‘ .$fid. ‘-‘ .$page. ‘.html” />’;
三.为archiver页加link canonical标签
1.修改archiver/index.php:在global $boardurl, $_DCACHE, $charset, $navtitle, $headerbanner, $headernav;行下加一行:global $extrahead;
在<meta http-equiv=”Content-Type” content=”text/html; charset={$charset}” />
行下加一行:$extrahead
2.修改archiver\include\thread.inc.php:此文件中有两个showheader();,在第二个的上面加一行:$extrahead .='<link rel=”canonical” href=”thread-‘ .$tid. ‘-1-1.html” />’;
四.将archiver内容页最下的“本看完整版本”链接改为静态形式
修改archiver/include/thread.inc.php,将 “viewthread.php?tid=$tid”替换为”thread-{$tid}-1-1.html”
如果您是以动态URL形式为首先版本,上述相应位置应替换为如下语句:
$extrahead .='<link rel=”canonical” href=”viewthread.php?tid=’ .$tid. ‘” />’;
discuz禁止某个版帖子的收录
各种原因,需要禁止SE对discuz某个版面帖子的收录(如水版、或为了更好的SEO等)。当然如果设置了权限,不允许游浏览此版面,那么就肯定不能收录了。
1.使用robots.txt文件,禁止版块列表的收录
Disallow: /forum-1-
#数字即为要禁止版块的ID。
#注意数字最后的 – 不要省略,否则连ID为11,12等1开头的版都禁了
2.加meta robots标签,禁止收录某个版块帖子
修改viewthread.php文件,在$oldtopics = isset($_DCOOKIE[‘oldtopics’]) ? $_DCOOKIE[‘oldtopics’] : ‘D’; 上面加:
if( $thread['fid']==1 ){ $seohead .= '<meta name="robots" content="noindex,nofollow" />'; }
判断一下帖子是属于哪个版($thread[‘fid’])的,给它加上meta robots禁止。
第一点虽然禁止版块收录了,但有可能从动态形式或其它地方访问到帖子链接,所以还要用第二点给帖子页加上meta。这两点中的版块ID和要您禁止的版块对应,如果有多个版块,第一点中添加行就行了,第二点要修改断语句中中的逻辑表达式。
discuz论坛禁止无效页面的收录
discuz会产生哪些无效的页面,有什么问题
1.删除了的帖子、版块,当访问时返回帖子不存在的提示信息页。
2.设置了一定权限才能浏览的帖子、版块,很多情况会泄露链接,得到没权限的提示
3.其它各种情况下的提示信息页面。这些都是给用户看的,没有实质内容,都禁止收录。
其实最大的问题还是副本内容的问题,因这些不同的URL,返回的却是相同的内容。对SE不友好。其实对于删除了内容,应该返回404,但为了简单,都使用加meta robots标签,禁止ES收录的方法来解决。
修改提示信息页面,解决重复内容问题
方法一
1.建立/templates/defualt/header_norobot.htm文件
完全拷贝header.htm的内容,在<title>下再加一行:
<meta name=”robots” content=”noindex,nofollow” />
2.修改/templates/default/showmessage.htm文件
将{subtemplate header}替换为{subtemplate header_norobot}
3.修改/templates/default/nopermission.htm文件
将{subtemplate header}替换为{subtemplate header_norobot}
如此修改之后,SE就不会收录无权访问的URL,对于已删除的帖子,因为禁止收录了,过一段时间也会从索引中删除。这样,给SE的都是一些有内容的网页,对于提高权重会有好处。
方法二
修改global.func.php文件中的showmessage函数。
function showmessage($message, $url_forward = '', $extra = '', $forwardtype = 0) { extract($GLOBALS, EXTR_SKIP); global $hookscriptmessage, $extrahead, $discuz_uid, $discuz_action, $debuginfo, $seccode, $seccodestatus, $fid, $tid, $charset, $show_message, $inajax, $_DCACHE, $advlist; define('CACHE_FORBIDDEN', TRUE); $hookscriptmessage = $show_message = $message;$messagehandle = 0;
在第四行 define(‘CACHE_FORBIDDEN’, TRUE); 后面加上:
$extrahead .='';
即是
function showmessage($message, $url_forward = '', $extra = '', $forwardtype = 0) { extract($GLOBALS, EXTR_SKIP); global $hookscriptmessage, $extrahead, $discuz_uid, $discuz_action, $debuginfo, $seccode, $seccodestatus, $fid, $tid, $charset, $show_message, $inajax, $_DCACHE, $advlist; define('CACHE_FORBIDDEN', TRUE); $extrahead .='<meta name="robots" content="noindex,nofollow" />'; $hookscriptmessage = $show_message = $message;$messagehandle = 0;
标签云
.htaccess 301 2010 Android apache cache cacti CSS date ddos discuz django fastcgi freebsd git google http iftop linux macos mysql nginx njava php pr python sed seo snmp ssh ubuntu ubuntu10.04 wordpress xdebug 优化 密码 文件 时区 用户 登录 监控 缓存 网站 脚本 颜色
WP Cumulus Flash tag cloud by Roy Tanck and Luke Morton requires Flash Player 9 or better.