过期罐头电脑论坛-win7、win10雨人系统下载

过期罐头电脑论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
雨人系统 过期罐头 视频编辑软件 电脑维修 win7系统下载 win10系统下载
查看: 1267|回复: 0
收起左侧

应用 Windows 服务自动更新网站

[复制链接]
发表于 2011-7-12 15:30:08 | 显示全部楼层 |阅读模式
发贴请勿包含网站外链(直接下载地址和网盘除外),屡犯者将封禁ID、网址永久屏蔽,www.gqgtpc.com感谢支持!
应用背景:作为一个站长,为了管理好网站,也为了讨好搜索引擎,每天都需要. 在不同的时段更新网站的内容,有的站长需要. 维护几个网站,每天的工作量不可思议 ,假如 逢年过节,站长没有在电脑旁边或者无法上网,这个维护工作也就无法进行。
使用原理:本文介绍了一种方法来自动更新网站内容,采用一个Windows 服务,设置好它的URL访问地址,每天在特定时间内访问需要. 更新内容的网站的特殊页面(假定这个页面为A);在网站端,设置一个审核机制,只有通过审核的内容才能显示在网站前端,新加的信息默认是不审核,页面A的作用就是从未审核信息中挑出几条进行审核,这样就更新了网站内容,对于静态首页的,页面A还可以生成下首页静态页面。当然页面A还可以做更多的用处 ,如备份数据库、更改到期用户状态、删除无用的暂时 文件等。
详细原理:
1) Windows服务端:
Windows服务采用.Net Framework2.0框架,所以使用时应该先安装好.Net Framework2.0,下载地址:
http://www.microsoft.com/downloads/details.aspx?FamilyID=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5&displaylang=zh-cn
采用一个xml文件存储配置信息,里面存储需要. 访问的网址,示例构造 如下:










一个item代表一次访问,url是具体的网址,设置为网站自动更新的url地址,可以带查询字符串来设置更新的数量,time表示每天访问的时间,time只能准确 到1分钟,而且必须保证每个item在同一分钟内只有一个url任务。
程序采用一个定时器,每隔20秒扫描一下配置项中是否有需要. 访问的网址,假如 有则访问一次这个网址。相关代码如下:
public Job()
{
System.Timers.Timer myTimer = new System.Timers.Timer(20000);
myTimer.Elapsed += new ElapsedEventHandler(myTimer_Elapsed);
myTimer.Enabled = true;
myTimer.AutoReset = true;
XmlDocument xml = new XmlDocument();
xml.Load(AppDomain.CurrentDomain.BaseDirectory + ConfigurationManager.AppSettings[xmlfile]);
xmllist = xml.SelectNodes(//root/Urls/item);
}
void myTimer_Elapsed(object source, ElapsedEventArgs e)
{
try
{
Log.SaveNote(DateTime.Now.ToString(yyyy-MM-dd HH:mm:ss) + Heart Work!(心跳检测));
YourTask();
}
catch (Exception ee)
{
Log.SaveException(ee);
}
}
void YourTask()
{
count++;
if (count > 10000)
count = 0;
for (int i = 0; i < xmllist.Count; i++)
{
string url = xmllist.Attributes[url].Value;
string time = xmllist.Attributes[time].Value;
//Log.SaveNote(url + - + time);
DateTime workTime = DateTime.Parse(DateTime.Now.ToShortDateString() + + time);
//lastwork
if (DateUtil.DateDiff(DateUtil.DateInterval.Minute, workTime, DateTime.Now) == 0)
{
//到了执行时间
if (DateUtil.DateDiff(DateUtil.DateInterval.Minute, workTime, lastworktime) != 0)
{
//访问网址,如 手机主题 http://www.shouji138.com
visit(url);
lastworktime = DateTime.Now;
}
}
}
}
void visit(string url)
{
HttpWebRequest myHttpWebRequest = null;
HttpWebResponse myHttpWebResponse = null;
Stream receiveStream = null;
try
{
myHttpWebRequest = (HttpWebRequest)WebRequest.Create(url);
myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
receiveStream = myHttpWebResponse.GetResponseStream();//得到回写的字节流
Log.SaveNote(访问: + url);
}
catch (Exception ex)
{
Log.SaveNote(访问失败: + url);
Log.SaveException(ex);
}
finally
{
if (receiveStream != null)
receiveStream.Close();
if (myHttpWebResponse != null)
myHttpWebResponse.Close();
}
}
2) 网站端:
网站端应该采用审核机制,比方 一个表News表,设置字段isaccept为审核字段,1表示已审核,0表示未审核,新增的内容默觉得 未审核0。我们在平常 的时候多添加一些内容到未审核库中,然后交给程序来自动更新。更新程序可以采用任何动态网页技术,asp、php、jsp都可以,该程序的作用就是把未审核的内容更改为审核状态,为了灵活起见,可以设置一个表示更新数量的查询字符串变量给程序,如num,则更新3条的网址就变成http://www.shouji138.com/A.asp?num=3这种方式 ,这个网址可以在Windows服务的配置文件中设置好。本文的重点是讲采用Windows服务来进行网站更新,所以具体网站端的代码我就没有写出来了,各位站长可以依据 自己. 网站的状况 来编写。Windows服务是与网站端没有业务逻辑关联的,windows服务尽管 定期的来访问网站端的更新网址,而网站端的更新网址尽管 更新的业务逻辑。

楼主热帖
[Windows10] Windows 8系统应用打不开的解决方法
[Windows7] 详解Win7+IIS7发布网站或服务步骤
[Windows7] Windows7 清空回收站怎么恢复?
[Windows7] Windows 7系统administrator权限就是最高权限
[Windows7] Windows 7家庭版系统怎么安装win7主题
[系统应用经验技巧] 解决Windows系统中输入法不显示的几
[Windows7] Windows 7系统更新漏洞后无需重新启动方法
[Windows10] 微软首度证明 Windows 8将有中国版本
[系统应用经验技巧] 你的win7与众不同!桌面应用小技巧
[Windows7] 用工具来调整Windows 7系统分区的方法

您需要登录后才可以回帖 登录 | 注册

本版积分规则

win7 64位旗舰版下载|win10系统下载|win7旗舰版|联系我们|网站地图|

GMT+8, 2016-12-9 05:59 , Processed in 0.228045 second(s), 29 queries .

官方免责声明:本站内容来自网友和互联网.若侵犯到您的版权.请致信联系,我们将第一时间删除相关内容!

Powered by Discuz!

过期罐头电脑论坛

win7旗舰版_windows10

快速回复 返回顶部 返回列表