我的网站,那个计算浏览次数的脚步语言,不知道怎么搞的。运行不了(js脚步)

我网站前面没有太关心这个问题,以前看了一下觉得没有关系。后来才发现全是一些死链。而且没有返回404。.一看那个脚步php文件还是有的。但是那个js连接好像是执行不了,我又以为没有指定那个目录下的特点文件。于是就修改了一下。后来发现和织梦的那个浏览计数不一样。所以就找不到问题点了。估计是js没有得到执行。网站是这个
http://www.kazuosofa.com/
。就是文章页。下面有截图的。大神帮我看一下是什么原因导致,不能计数的,有没有遇到过同样的问题呢?指向的链接多是空白的文件,织梦的就不一样!谢谢!
最新回答
独我暖阳

2024-10-23 10:02:31

下载是以流的形式(用Response.WriteFile(filename)实现),而不是直接给出文件地址
直接给出文件地址会导致:有的格式的文件(比如txt, pdf, doc)等被浏览器打开而不下载,且用户点击下载后又点取消放弃下载,计数就没必要了。。

所以要以写流的方式,只有用户真正下载文件,才会被计数器计数,你可以用一个ashx来实现,下面代码供参考

//path: 下载文件物理路径
System.IO.FileInfo DownloadFile = new System.IO.FileInfo(path);
if (!DownloadFile.Exists)
{
Response.Write("抱歉,文件: " + name + " 已不存在.");
return;
}

//下载文件
Response.ClearHeaders();
Response.Buffer = false;
Response.ContentType = "application/octet-stream";

Response.AppendHeader("Content-Disposition", "attachment;filename=" + Server.UrlEncode(DownloadFile.Name)); //URL编码文件名后保存,防止无法识别特殊文件名
Response.AppendHeader("Content-Length", DownloadFile.Length.ToString());
Response.WriteFile(DownloadFile.FullName);
Response.Flush();
/*
计数器+1
*/
追问

你说的这个是下载文件,我的那个指的是浏览变化。织梦的也只是给了一个链接的。但是,他就可以实现刷新+1.而我这个却不能执行。我这个是空的。我估计是那个链接写错了,而不是那个文件。