DUTORY主页 [非官方|爱好者]

2009年9月5日

Dutory 0.3 Gromit 发布

Posted by: TZH In: Dutory Beta - Dutory 版本

Dutory是一款方便易用的个人Blog程序,其特性包括: 

基于强大高效的ASP.NET 2.0平台
完全可视化编辑,所见即所得
自带相册,支持建立独立页面
支持主题界面切换及导入导出
支持Windows Live Writer,Word 2007等离线写作软件

升级:
升级了TinyMCE编辑器,修正了原编辑在IE8下的错位
对后台管理界面做了修改
加入了置顶文章的功能
修正了评论列表的错误


更新:
Bin目录下的dll文件
Common下所有文件
默认主题


下载

点击下载 Dutory Gromit 0.3.3498.15822.rar

 

更新方法

将除/App_Data/dutory.db数据库之外的文件全部上传覆盖即可!

演示地址:http://www.taonice.cn/guestbook

一、进入FTP,下载复制 single.php 文件,并改名为 guestbook.php ;

二、打开 guestbook.php 文件,在顶部添加代码:

 

<?php 
/*
Template Name: GuestBook
*/ 
?>
<?php
/*
Template Name: GuestBook
*/ 
?>

 

保存。这样就制作了一个名为GuestBook的页面模板;

三、进入站点后台管理添加一个页面,页面模板选 GuestBook ,保存;

四、复制 comments.php 文件,并改名为 guestcomments.php ,这是待会留言页面用的评论;

五、打开 guestbook.php 文件,修改

<?php comments_template();?>

<?php comments_template(‘/guestcomments.php‘);?>

附:《WordPress 最新评论倒序方法

 

在 comments.php 中找到下列语句:

<?php if ($comments) : ?>

在它的后面加上让WordPress评论倒序的语句:

<?php $comments = array_reverse($comments) ?> 

2010年1月1日

WordPress主题浏览器判断

Posted by: TZH In: Dutory Tech - Dutory 科技

PHP 的 $_SERVER["HTTP_USER_AGENT"];可以取得浏览器的 User Agent 字符串,User Agent 就是浏览器的标识字符串,也就是类似于名字的东东。给主题添加浏览器判断就要用到这个东东。

先看看每个浏览器的默认 User Agent 吧。

Windows 7, IE8 的 User Agent:

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0)

Windows 7, IE8 兼容模式的 User Agent:

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; Tablet PC 2.0)

Windows Vista, IE7 的 User Agent:

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506)

Windows XP, IE6 的 User Agent:

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)

Leopard, Firefox 的 User Agent:

Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; zh-CN; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.2

Leopard, Safari 的 User Agent:

Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_8; zh-cn) AppleWebKit/531.9 (KHTML, like Gecko) Version/4.0.3 Safari/531.9

Leopard, Opera 的 User Agent:

Opera/9.80 (Macintosh; Intel Mac OS X; U; en) Presto/2.2.15 Version/10.00

这样一来就好做处理了,可是有时候装了一些软件后 IE 的 User Agent 会出错比如 IE Tester 。

这个是装了 IE Tester 后 IE8 的 User Agent:

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; User-agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; http://bsalsa.com) ( EmbeddedWB http://bsalsa.com/); User-agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; http://bsalsa.com) (User-agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; http://bsalsa.com) ( EmbeddedWB http://bsalsa.com/)); SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)

只要仔细看输出的这些字符都能发现 “MSIE” 这个字符串,而且在User Agent 出错的时候 “MSIE 6.0” 这个字符串会在 IE7 和IE8 的 User Agent 里面都有的。“MSIE 8.0” 的只针对 IE8 ,而 “MSIE 7.0” 在IE8的兼容模式里面也是有的。这个情况很少出现的。可以不用考虑。

我的处理方法是读取 User Agent 然后判断的依据 User Agent 先判断是否为 IE,然后判断是否为IE7,最后再判断是否为IE8。剩下来的就是IE6 和 IE6 以下的版本了。当然要是IE9 出来了那就加上个 IE9 的(现在的情况是每个IE版本的都有兼容的问题)。接下来代码就好写了。

PHP代码如下:
$Agent = $_SERVER["HTTP_USER_AGENT"]; //取得浏览器的 User Agent
if(strpos($Agent, "MSIE")){ //搜寻 IE 的标识字符
  if(strpos($Agent, "MSIE 7.0")){ //搜寻IE7 的标识字符
    include ('index_ie7.php'); //调用为 IE7 定制的页面
  } elseif (strpos($Agent, "MSIE 8.0")){ //搜寻IE8 的标识字符
      include ('index_ie8.php');      //调用为 IE8 定制的页面
    } else {
      include ('index_ie6.php'); //调用为 IE6 定制的页面
    }
  }
} else {
  include ( 'index_main.php'); //调用默认的页面
}

要是你将这段代码保存为 index.php 的话,再建里对应的调用文件。就可以做出针对IE 6、IE7、IE8的首页了。如果你只是想对 IE 做出区别的页面用这个就可以了。还可以继续判断其他浏览器和版本来单独定制。

接下来就可以个人按照自己的习惯来处理了。

最后来个特别的 User Agent:

SonyEricssonW800c/R1BC Browser/SEMC-Browser/4.2 Profile/MIDP-2.0 Configuration/CLDC-1.1

其实这个是索爱W800C手机的 User Agent,通过这个 User Agent 也可以获得手机的型号。这样也就可以给手机定制访问的页面了。

12月30日晚上开始,Google的当家花旦PageRank开始进行更新。 这次更新距离上次仅仅2个月,打破了通常3月一更新的规律。或许是为了迎接2010年的到来吧。毕竟再过2天就是新的一年了。 总体来说,PageRank这次更新基本上都没有下降,唯一是受到封网影响的网站。算是Google送给大家的新年礼物吧。

2010年1月1日

[Dutory主题] Remove 下载

Posted by: TZH In: Dutory Tech - Dutory 科技

[Dutory主题] Remove 下载

因为国内APSX主机较少的限制,Dutory的普及速度较慢,不过Dutory不可否认的,还是做得是相当不错。因而,Dutory的主题自然没有那么多,现在又贡献出一个名为Remove的黑色主题供大家下载,制作的还是相当精细的。

预览图片:

snap_1.png

下载地址:

remove.dti

2009年6月28日

SSH数据迁移备份

Posted by: TZH In: Dutory Tech - Dutory 科技

记录一个使用SSH备份数据的方法:


1. 使用 SSH 登陆到原来的主机的根目录下,使用以下命令打包所有文件:

tar -cf benmao.tar.gz *

2. 在新主机上使用以下命令从原来主机下载刚才打包的文件:

wget http://benmao.com/benmao.tar.gz

3. 然后通过以下命令解开压缩包:

tar -xf benmao.tar.gz

4. 数据库转移的话推荐Evance推荐给偶的帝国备份王
特别是处理大sql的时候,自动分卷导入导出
mysql5到mysql4也能无缝转换

5. 上传到新的主机,然后解压缩开,

6. 使用 SSH 登录到 mysql

mysql -u dbuser -p

7. 选择工作的数据库:

use db1

8. 导入 sql:

source benmao.sql

9. 最后把域名解析到新的 IP 就搞定!

转移完毕一定删除掉压缩包,防止敏感信息暴露。

继续,仍然是301永久转向的实现方法,也是来自于《登上Google之巅:SEO技巧与技术》,这是最近在看的一本书,老外写的,学习SEO。

<%@ Language=VBScript %>

<%

response.status="301 moved permanently"

Response.AddHeader "Location", "http://bbs.blogpal.cn"

%>

昨天找到了PHP的301实现方法,于是昨晚把所有的应该使用301的地方全部设置了一遍,附上ASP.NET的301永久转向实现方法,来自于《登上Google之巅:SEO技巧与技术》:

<script runat="server">

private void Page_Load(object sender, System.EventArgs e)

{

response.status = "301 moved permanently"

Response.AddHeader("Location","http://www.dutory.com.cn");

}

<script>

2009年6月8日

PHP的301转向

Posted by: TZH In: Dutory Tech - Dutory 科技

301永久转向可以帮助转移原来域名上的PageRank等信息。昨晚找Captain注册了一个新的域名www.tasay.com.cn给{他说}使用,把原来的域名t.tangzhehao.com.cn设置301转向到新的域名,于是在网上找到了PHP的301转向方法:

<?php 

$url="http://www.tasay.com.cn".$_SERVER["REQUEST_URI"]; 

header("HTTP/1.1 301 Moved Permanently"); 

header ("Location:$url"); 

?>

只需要编辑一个index.php页面,然后把代码拷贝进去,就OK了。你访问http://t.tangzhehao.com.cn/试试?

2009年6月7日

Linux 释放内存命令

Posted by: TZH In: Dutory Tech - Dutory 科技

VPS免费提供给了几个人使用,但是不知道是Linux系统自身的原因——很多程序员都反映Linux系统很消耗内存,还是WordPress运行的确庞大,或者那些接受赞助的站点不老实——我实在不愿意这样去猜忌别人。内存总是被耗完。

最近升级到了512MB的内存,今天上线发现速度仍然是奇慢无比,打开PuTTY,一检查内存使用量,发现512MB的内存用得只剩下17MB了!立即后台重启后恢复150MB左右的剩余,于是很郁闷的再去咨询技术,结果技术给了一个解决办法:

 

sync

echo 3 > /proc/sys/vm/drop_caches

效果相当的明显,清除后,内存剩余的立即恢复到了200MB多。如果可以,可以设置成计划任务,根据自身情况,每几个小时执行一次,肯定会有用的。

 

最近跟着VPS的技术在慢慢熟悉Linux系统要用到的一些常用命令,不过目前还没有计划要去学习博大精深的Linux,能抽出时间把PHP基本掌握就已经很不错了。

这个命令是用来查看内存使用率的,很有用:

一般形式:

free -m

以下是free命令的语法,你可以去尝试一下,都是和内存有关的:

free [-b|-k|-m|-g] [-l] [-o] [-t] [-s delay] [-c count] [-V]

  -b,-k,-m,-g show output in bytes, KB, MB, or GB

  -l show detailed low and high memory statistics

  -o use old format (no -/+buffers/cache line)

  -t display total for RAM + swap

  -s update every [delay] seconds

  -c update [count] times

  -V display version information and exit

2009年6月7日

[转]最新CSS兼容方案

Posted by: TZH In: Dutory Tech - Dutory 科技

From: CSS森林[http://www.cssforest.org/]

浏览器在不断更新,可使用的hack也需要更新下了,继上一篇《 最新CSS兼容方案 》之后,Opera和Safari都已经更新了版本,IE8也出来了,还有一个Chrome。新版本的Opera 9.6 和Safari 3.2.3分别有一个hack不能使用了,具体为:

Opear:

*+html .e{
background-color:#0000FF;/* OP */ 
}

 

Safai:

@media all and (min-width:0){ select{ ... }}

 

还好发现了另一个Safari可以用的hack,Chrome和Safari的hack一样,还无法单独区分。另外“[; … ]”中的内容只有Opera读不到,注意“[]”要成对出现,不然Opera下会导致后面的样式无法读取。重新整理的hack如下:

.e{
color:#FFF;/* FF,OP,IE8 */
[;color:#0F0;]/* SF,CH */
*color:#FF0;/* IE7 */
_color:#F00;/* IE6 */
}
.e{
background-color:#332200;/* FF*/
}
html* .e{
background-color:#FF00FF;/* Sa IE7 CH */
}
*+html .e{
*background-color:#0000FF;/* IE7 */
}
* html .e{
background-color:#00FFFF;/* IE6 */
} 
html*~/**/body .e{
background-color:#055000;/* IE8 */
}
@media all and(min-width:0){
	.e{
		background-color:#FF5500;/* OP */
	}
}

经FF3、OP9.64、OP9.5.0、Sa3.2.3(pc)、Ch1.0.154.65、Ch2.0.172.28、IE7、IE6、IE8测试通过,如果你在其他的浏览器版本上测试过,欢迎给我留言,把结果告诉我。

CyberArticle和Live Writer的比较

CyberArticle并不是一个专用的Blog离线发布软件,但是因为包含了WordPress发布插件,使得CyberArticle可以方便的用于发布WordPress文章。
Live Writer是一个专用的Blog离线发布软件,支持主流的Blog系统。
严格来说,这两个软件并不是一类软件。但是针对WordPress系统,使二者有了一定程度的可比性。下面作一个比较简单的比较。(仅仅针对WordPress)。
文章编辑功能离线发布,最重要的就是文章编辑。下面是编辑文章的界面:
CyberArticle
1.png
Live Writer
2.png
下面是一个比较

功能
CyberArticle
Live Writer
编辑
撤销,重做,剪切,复职,粘贴


选择性粘贴
纯文本,HTML,图片,RTF

纯文本,HTML

查找,替换
查找,替换

查找



插入

常规
图像,表格,日期,时间,水平线,批量插入图片,书签(页内链接),链接,返回到顶部链接,索引,HTML组件。

链接,图片,表格,相册。

特色功能

插入HTML组件:可以插入大量预定以好的HTML代码,例如各种各样的表格,文字等等。
批量插入图片:可以批量插入本地图片。
书签:可以插入业内链接,实现页内跳转。
插入相册,可以从网络相册插入图片。

格式

常规

样式,字体名称,字体大小,字体样式,字体颜色,段落格式

样式,字体名称,字体大小,字体样式,字体颜色,段落格式

特色功能

字体大小,支持多种字体大小:8,9,10,11,12,14,16,18,20,24,36,72

仅支持8,10,12,14,18,24,36。不支持中文常用的9号字

表格功能

常规

插入表格,插入行,列,删除行,列
插入表格,插入行,列,删除行,列
特色功能


合并单元格, 差分单元格,设置单元格行/列跨距。

移动航/列

其它功能


宏功能,DOM橡皮擦,标记文字,模板功能,HTML标记导航,荧光笔,源代码着色功能

拼写检查,字数统计

从上面的表格中可以看到,CyberArticle的编辑功能要更多一些。但是在测试过程中,发现Live Writer粘贴HTML格式的时候,无法显示HTML里面包含的本地图片。这是一个比较大的问题。
Blog发布功能二者都可以直接发布文章。
CyberArticle在发布文章的时候,会出现对话框,要求输入服务器信息(如果已经发布过,则保存相关信息),文章类型(页面还是Blog),分类。
Live Writer在新建文章的时候,就需要确定是页面还是Blog。编辑文章的时候,则要求直接选择分类。点击发布按钮后,直接发布。
二者没有什么本质区别,Live Writer还支持设置Tag。但是测试中,无法正常使用,也无法显示Tag。CyberArticle的Blog无法直接支持Tag。
文章管理功能CyberArticle是知识管理软件,所有的文章,都保存在本地。即文章发布后,本地和Blog系统,各自都有自己的文章。如果以后需要重新编辑文章,直接在本地编辑后,重新发布上去,就可以将在线的文章更新成新的文章。也可以强制选择,发布成新的文章。
Live Writer的文章发布之前,会当成草稿保存在本地。发布后,从草稿中删除。如果以后需要重新编辑,则需要从在线的文章读取。因此Live Writer文章在本地,并没有备份。
CyberArticle还拥有更多的管理功能,例如批量替换,批量文章处理,制作电子书等等功能。
结论如果您的文章,大部分都是原创内容,那么用Live Writer或者CyberArticle,区别并不是很大。但是因为CyberArticle会把文章保存在本地,因此对于您的数据安全性,会有更好的保证。即使以后您从一个Blog转移到另外一个Blog,或者您的Blog服务商突然停止服务,您的文章也都保存在本地,完全不用担心这个问题。
如果您的文章大部分都是从网络上复制而来的,那么用CyberArticle,无疑会让您更加得心应手。因为CyberArticle本身就是一个知识管理软件,致力于网络知识的获得和管理。而在这方面,可以说是独一无二的。
总之,如果您使用了WordPress作为您的Blog系统,那么用CyberArticle作为离线发布工具,可以说是最好的选择。

2009年5月29日

301永久重定向方法

Posted by: TZH In: Dutory Tech - Dutory 科技

  301永久重定向:这是SEO中的一个基础名词,在URL规范化中会用到,也许大家都知道这个名词,但是由于应用的不是非常频繁,导致很多专业做SEO的朋友都不是很熟悉301永久重定向的具体操作方法,今天我就讲解下301永久重定向的理论,以及实际的操作方法。

  301永久重定向的概念

  网址重定向最为可行的一种办法。当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。

  上面那段话是简述了301永久重定向的概念,那为什么要如此重视301永久重定向呢?

  原因:301永久重定向是所有的重定向方法中唯一符合搜索引擎规则的重定向方法,其他的重定向还包括302暂时重定向和JS跳转等,这些方式都容易导致URL不规范问题的产生。所以说如果你有多个域名都希望可以让他们访问同一个网站,那就只能将其中一个做为主域名,剩下的其他域名做301永久重定向到这个主域名,只有这样才可以完美的让多个域名都访问一个站点,不会产生重复收录,导致网站被惩罚的现象。

  301永久重定向的执行方法

  301永久重定向有几种不同的做法,在windows主机上和Unix/Linux主机是不同的。

  一、在windows主机上设置的方法:可以在IIS服务器上设置也可以在代码中设置。

  1、在IIS服务器上设置301的方法:

  这种设置方法需要有一个先天条件,那就是你有服务器的管理权,你可以直接操作IIS服务器,并且可以随意开通新的虚拟主机,否则你只能用修改网站代码的方法。

  首先开通一个新的虚拟主机,将你需要做301永久重定向的域名正常与该空间绑定,这个绑定的方法你可以咨询服务器托管商。

  然后打开“控制面板”→找到“管理工具”→打开“Internet 信息服务”。打开后,可以在管理器左侧树形菜单中找到你的网站,然后右击选择“属性”,打开网站的属性管理面板,并且选择到“主目录”选项卡,选择“重定向到URL”,然后在地址框中输入“主域名”,然后将选项卡中的“资源的永久重定向”选择上,点击确定即可设置完毕。 

  2、在网站代码中设置301的方法:

  只需要将以下代码加在网页的开头即可,不过只能用在ASP和PHP文件中,HTML目前无法通过代码设置301。

301永久重定向 - ASP代码

301永久重定向 - PHP:

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.open-dir.cn [NC]
RewriteRule ^(.*)$ http://www.taonice.cn/ $1 [L,R=301]

注:将我的网址替换成你自己的定向后的目标网址即可,所有的标点必须用英文半角。

  二、如果你用的是Unix/Linux主机:可以用.htaccess文件。

  比如把/old.htm转到/new.htm,可以用这个指令:redirect 301 /old.htm /new.htm。如果要把所有http://www.taonice.cn/ 形式的URL用301重定向转到 http://www.taonice.cn/。包括所有的目录和内页也转向到新域名的相应位置,那就要用到mod_rewrite,在根目录下建立一个.htaccess文件,书写格式如下:

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.open-dir.cn [NC]
RewriteRule ^(.*)$ http://www.taonice.cn/ $1 [L,R=301]

最近一直在用WordPress(http://www.taonice.cn/),租用了VPS,CentOS操作系统的,配置Nginx引擎,因为我完全不懂,一直都是技术在打理,我也一边在学。

从技术那里学到了两条很有用的备份命令:

1. tar FileName.tar.gz DirName

2. zip FileName.zip DirName

eg. tar test.tar.gz /test

两条的作用都是把目录打包压缩,第一条是打包成.tar.gz格式的命令,第二条是打包成.zip格式的命令。

IE8已经Beta2了,马上就要正式推出了。然而前不久微软为IE8做的调查表明,几乎所有的网站都不支持这个新东东。我们不由得再次呼唤:微软IE,回头是岸!

微软IE已经执着的坚持着但丁那句悠久深远的话:“走自己的路,让别人去说吧。”与W3C标准背道而驰,愈行愈远,也是它给大多数网站设计师带来了更多的烦恼,随着一代又一代的IE的推出,IE虽然更加强大、安全,但是与此成正比的是它也更加庞大和笨重,或许,IE真的该回头了!
自从用了IE8 整个世界都变了形。如果你的网站还没有做好对IE8的支持,那也没关系,只需要在页面中加入如下HTTP meta-tag:

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />

只要IE8一读到这个标签,它就会自动启动IE7兼容模式,保证页面完整展示.
还有一种方法是针对整个网站的,在IIS中加入如下描述符就可以有相同的效果,当然这么做范围更广.

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <httpProtocol>
      <customHeaders>
        <add name="X-UA-Compatible" value="IE=EmulateIE7">
      </customHeaders>
    </httpProtocol>
  </system.webServer>
</configuration>


或者你还可以使用IIS admin tool来定义,更为简单.

2009年3月3日

盗用腾讯天气

Posted by: TZH In: Dutory Tech - Dutory 科技

用简单的Replace盗用腾讯免费的天气!低调低调~

#include <IE.au3>
Filedelete ("Tq.txt")
     $Url="http://www.soso.com/tb.q"
     $oIE = _IECreate ($url, 0, 0)
     $sHTML = _IEBodyReadHTML ($oIE)
     $array= StringRegExp($sHTML, "<(?i)strong class=fs_14>(.*?)</(?i)strong>",1)
    for $i = 0 to UBound($array) - 1
     $tqtemp = $array[$i]
Next
     $tqtoday = StringReplace($tqtemp, "&nbsp;", " ")
msgbox (32,"天气",$tqtoday)
     _IEQuit ($oIE)

2009年3月3日

Google Chrome 地址栏命令

Posted by: TZH In: Dutory Tech - Dutory 科技

Google Chrome 傍这谷歌Google这个大款不怕不威风啊,速度快,体积小巧,轻便简介都是大家对它的评价。看看在Google Chrome 地址栏的命令吧:

about:version - 显示当前版本 也可以是chrome-resource://about
about:memory - 显示本机浏览器内存使用状况
about:Plugins - 显示已安装插件
about:histograms - 显示历史记录
about:Dns - 显示DNS状态
about:cache(view-cache: )- 显示缓存页面
view-cache:Stats - 缓存状态
about:Stats - 显示状态
about:network - 网络监控工具
chrome-resource://new-tab - 新标签页
chrome-resource://favicon - 乱码,是什么?
about:internets - 这应该算是一个彩蛋?

Search

Flickr PhotoStream

    flickrRSS probably needs to be setup

About

« 2010年1月 »
     12
3456789
10111213141516
17181920212223
24252627282930
31      

Search

Statistics

文章:88篇
评论:8条 (4条Spam)
相册:1个 (20张图片)
主题:0remix主题