分享、学习、提高
Thank you for reading...
2008/11/01 22:56
一直认为360安全卫士很强,几乎没有查不了的木马或恶意软件,不过,最近不知什么情况下,中招了。表现形式是:浏览器默认首页为http://www.6700.cn/?tn=102722。如果在IE选项中将默认主页改掉,再次打开还是存在,也就是说有一个什么程序一直运行着。但是通过360safe就是查不出来:(

被它骚扰了有两周了,今天再去SE搜索一下,发现在360的论坛中确实也有一些人反应杀不了它。看到有个人回复说他是使用“Windows清理助手”搞定的。搜索一下,下载回来,安装后,执行快速扫描,约1~2分钟扫描完毕后。

看到 可清理对象 中有一个Trojan.ytewcxzsw.wrew2ds,风险:高。

应该就是它了吧!
看详细,发现有如下程序:
C:\WINDOWS\TASKS\AT1.JOB
C:\WINDOWS\TASKS\AT2.JOB
C:\WINDOWS\TASKS\AT3.JOB
C:\WINDOWS\TASKS\AT4.JOB
C:\WINDOWS\TASKS\AT5.JOB
C:\WINDOWS\TASKS\AT6.JOB
C:\WINDOWS\TASKS\AT7.JOB

去C:\WINDOWS\TASKS\看了下,还真有这些程序,点属性发现是改不了的。

“执行清理”-> “不保留备份”,软件提示清理掉了。

再打开IE,仍然有?去IE选项将默认主页改为空白,关闭再打开,哈,成功了!

看来360safe也不是万能的,呵呵!
2008/10/13 21:20
Tags: , ,
使用smarty模板时,默认的定界符是{和}。当页面的代码中包含保留词或定界符时,就会出现如下的错误提示:
引用
Fatal error: Smarty error: [in hx.html line 100]: syntax error: unrecognized tag: ......


翻阅了一下Smarty官方手册,找到解决方案。

整理了一下,三种解决方法。

1.更换定界符。

$smarty->left_delimiter = '<!--{';
$smarty->right_delimiter = '}-->';
即使用<!--{和}-->来作为定界符,但在模板写变量时就会比较麻烦,个人不建议这样操作。
详细说明:http://www.itlearner.com/code/smarty_manual/language.escaping.html

2.在代码中用{ldelim},{rdelim}来替代你设定的定界符。
详细说明:http://www.itlearner.com/code/smarty_manual/language.function.ldelim.html

3.用{literal}和{/literal}来包含你的代码。
我推荐使用这种方法,至少我是觉得这种方法是最方便的。把可能会出问题的代码前后加上{literal}和{/literal}即可。
详细说明:http://www.itlearner.com/code/smarty_manual/language.function.literal.html
2008/02/05 21:52
Tags: , ,
Windows下php5.16和apache2.2的安装问题

今天在本本上安装WAMP环境(Windows+Apache2+MYSQL+PHP5),php本机上有个5.16的版本,那就用它吧。apache则是去官方下载了最新版apache_2.2.8-win32-x86-no_ssl.msi。

所有软件都安装在c:\www目录下。安装完后,apache测试页面正常。然后在httpd.conf中加入php的配置参数,

# For PHP 5 do something like this:
LoadModule php5_module "c:/www/php5/php5apache2.dll"
AddType application/x-httpd-php .php

# configure the path to php.ini
PHPIniDir "C:/www/php5"

重启Apache,居然提示:
引用
httpd.exe: Syntax error on line 486 of C:/www/apache2/conf/httpd.conf: Cannot load C:/www/php5/php5apache2.dll into server: \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6


开始以为自己安装有错,但试了多种方法均无效,只能借助于搜索引擎。

查到一篇:http://www.beenhero.com/post/Cannot-load-php5apache2.dll-into-server.html

原来是PHP5.1.x系列的压缩包里的php5apache2.dll只适用于apache2.0.*。

我根据这位朋友提供的解决方案解决了这个问题,在这里转贴一下:)

引用
先下载 这个文件,并解压,共有两个文件.
里面有一个Windows Installer 3.1的升级补丁: WindowsInstaller-KB893803-x86.exe
还有一个压缩包,再解压则有下面三个文件:

vcredist_x86.exe
php5apache2.dll
httpd.exe.manifest

步骤:

1.将 php5apache2.dll 覆盖掉你原来PHP目录下的 php5apache2.dll 文件.

2.将 httpd.exe.manifest 文件复制到你的apache安装目录下的bin文件夹下.

3.双击运行vcredist_x86.exe安装.(如果您的系统里已安装了 .NET framework 2.就可以省掉这一步)


如果第三步出现错误,则安装Windows Installer 3.1的升级补丁,那么就可以完成第三步了。
完成后去重启你的apache2.2试试吧.



@@080827@2UPDATE:
看了下面这位朋友的回复,挺意看了我机子上的版本,没有php5apache2_2.dll这个文件。然后去下载了最新的php-5.2.6-Win32.zip,里面才有php5apache2_2.dll这个文件。没去试,应该就是用LoadModule php5_module C:/php5/php5apache2_2.dll了,这下方便多了:)
2008/01/13 12:26
Tags:
Function getfile(filename)
  dim f
  if fso.fileExists(server.MapPath(filename)) then
  set f = fso.OpenTextFile(server.MapPath(filename))
  Response.write f.ReadAll
  set f = nothing
  end if
End Function

调用时出现:

Microsoft VBScript 运行时错误 错误 '800a003e'  

输入超出了文件尾  

/function.asp,行35

第35行就是Response.write f.ReadAll这句。
这是一段读取已经存在的文件,并输出文件内容的函数。但当这个文件没有内容时,就会出这种错误提示。
查了文档,ReadAll不会自己判断是否到文件尾,只好,加了个atendofstream的判断语句,测试OK。

更改后的代码为
Function getfile(filename)
  dim f
  if fso.fileExists(server.MapPath(filename)) then
  set f = fso.OpenTextFile(server.MapPath(filename))
  if not f.atendofstream then  
  Response.write f.ReadAll
  end if
  set f = nothing
  end if
End Function

分页: 1/1 第一页 1 最后页 [ 显示模式: 摘要 | 列表 ]