‘开发遇到的问题’ 分类下的所有文章
2011四月5

网站被挂马,而在页面中找不到此代码

1,360arp防火墙开着,不是arp欺骗
2,在%windir%\system32\inetsrv\MetaBase.xml看到DefaultDocFooter指向一其它文件,明白原因所在!,删除。
DefaultDocFooter 属性指定附加到返回到客户端的 HTML 文件的自定义页脚(页脚并不附加到 ASP 文件)。如果将 EnableDocFooter 属性设置为 true,则仅发送自定义页脚。页脚可以是一个字符串
DirBrowseFlags 控制是否启用目录浏览,可以提供多少目录和文件信息(如果启用浏览)以及目录中是否包含默认页的标记。
注意 如果客户端访问目录时没有提供文件名,而 EnableDefaultDoc 标志设置为 true,那么服务器将查找 DefaultDoc 属性指定的默认文件。如果该目录中不存在默认文件,而 EnableDirBrowsing 标志又设置为 true,那么系统将启用目录浏览。

2011三月19

OLE DB访问接口”SQLNCLI”无法启动分布式事物

开发遇到的问题 评论关闭
建立复制分发的时候出现:OLE DB访问接口”SQLNCLI”无法启动分布式事物
原因:双方均要启动msdtc服务。
解决方法:双方电脑:
1.控制面板->管理工具->组件服务->计算机->我的电脑->右键->属性
2. 选择MSDTC页, 确认”使用本地协调器”
3.点击下方”安全配置”按钮
4. 勾选: “允许网络访问”,”允许远程客户端”,”允许入站”,”允许出站”,”不要求进行身份验证”.
5. 对于数据库服务器端, 可选择”要求对呼叫方验证”
停止分布式事务协调器服务,然后重新予以启动。
停止参与分布式事务的任何资源管理器服务(如 Microsoft SQL Server 或 Microsoft Message Queue Server),然后重新予以启动。
6.在双方防火墙中增加MSDTC.exe例外
可用命令行: netsh firewall set allowedprogram %windir%\system32\msdtc.exe MSDTC enable
7.dtC用到remoting的135端口,确保防火墙没有阻止
若还不行,修改host文件,将对方机器名和IP加入,因为远程服务器需通过发起服务器的机器名查找服务器。

注意:若是集群,则开群集DTC设置(在本地DTC下面)
或者在没有事务的情况下,不使用DTC
EXEC sp_serveroption @server = 'dpreport',@optname = 'remote proc transaction promotion', @optvalue = 'false'

2011三月11

电脑访问不了局域网资料

开发遇到的问题 评论关闭

网络连接配置正确,只是访问\\192.168.16.223这样的资源提示无法访问。
原因:将服务中的Workstation启动即可。
注:WordStation:维护远程资料访问功能

2010十二月13

showModal进行保存之类的操作会直接打开新的页面

开发遇到的问题 评论关闭

解决方法:在<head>内加入:? <base target=”_self”/> 此为链接指定默认的打开方式,当不显示指定时即用此默认。

2010十二月10

CS0016: 未能写入输出文件“C:\…cdcab7d2._hp756ur.dll”–“拒绝访问。 ”

开发遇到的问题 评论关闭

在Windows 的TEMP 目录下把Network Services(2003用)加到目录安全性下,注意:除了读取和运行权还不够,要加修改和写入的权限,否则还是会出”拒绝访问”的错误.

2010十一月26

利用nhibernate,出现No persister for: User

开发遇到的问题 评论关闭

已将hbm.xml改成嵌入的资源还是不行,后来发现:
<hibernate-mapping xmlns=”urn:nhibernate-mapping-2.0” assembly=”MyLib” namespace=”MyLib”>
更改为<hibernate-mapping xmlns=”urn:nhibernate-mapping-2.2” assembly=”MyLib” namespace=”MyLib”> 解决!

2010十一月21

后台向前台进行URL传参,若是中文出现%符号,需要解码

http://localhost/phnix2/confirm.html?1=1&CustomerName=%ba%c3%b5%c4&tel=4444444&phone=33333333&mail=333333&CustomerAddress=%bc%d2%cd%a5%c8%cb&Remark=%bc%d2%cd%a5%c8%cb&CustomerId=51

URL传到前台后,前台js利用unescapte等方法均得不到中文。

解决方法:
后台:项目添加引用 Microsoft.Jscript
利用Microsoft.JScript.GlobalObject.escape(URL); 进行编码
前台利用unescape解码

2010十月11

程序利用using System.Management, 开发环境测试良好,更新代码上去报找不到此引用的错误

开发遇到的问题 评论关闭

?在正式环境的web.config中assemblies结点下加入:???
<add assembly=”System.Management, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A”/> 即可。
即:引用的系统命名空间在web.config的assemblies结点下存储。

2010十月1

网页保存

开发遇到的问题 评论关闭

网页保存的时候若名字是中文,则下载到本地会因中文名称引用路径问题引起css不能读取,所以若默认是中文最好调到字母

2010十月1

服务器执行速度慢,但cpu,内存使用却很低

开发遇到的问题 评论关闭

用perfmon分析知,是磁盘读写拖慢了速度, 磁盘的读写操作是最费资源的操作之一,SQL Server 在内存中生成一个缓冲池来存放从数据库读取的页,可以加大通过加大内存,存放更多的缓冲数据来减少对磁盘的读写。
??? 1,增大虚拟内存:系统属性 – 高级 -性能 设置 – 高级 – 虚拟内存 更改:最大与最小设为物理内存的1.5倍
???? 2, SQL SERVER2005在32位上最大支持4GB,在数据库属性上开AWE,以支持更多内存。

2010十月1

LIKE ‘%ASFD%’ 将执行全表扫描,速度低下,利用全表扫描解决

开发遇到的问题 评论关闭

?LIKE ‘%ASFD%’ 将执行全表扫描,速度低下,利用全表扫描解决
若存储过程执行timeout,则利用sql语句拼接方式!

2010十月1

页面中包含

?这是因为有些代码不符合w3规范引起的,去掉头部即可解决。
或者写符合w3规范的代码:将代码放到http://validator.w3.org/检测下,不符合规范的做出相应修改。

DOCTYPE声明对JS获取窗口宽度和高度的影响:
var control = document.body.scrollTop?document.body:document.documentElement;
然后用control.scrollTop与control.scrollLeft

2010十月1

百万级的数据表,对部分数据处理总是timeout

开发遇到的问题 评论关闭

数据表在不断的被插入,数据量不断增加,直接对满足条件的数据筛选,处理速度很慢。
解决方法: 表横向切割,将满足条件的数据转储到一临时表中,只对此临时表操作。因为此临时表记录数不会增加,且去除上多余的筛选,速度快上诸多。

2010十月1

sql语句在Sql Server执行速度很快,1到2秒,而用web连接获取数据,总是timeout

开发遇到的问题 评论关闭

解决方法:
1,优化sql语句。
2,将sql语句利用字符串构造,对于从几百个以上的数据中取出几个值来说,可以直接将值取出。
即:当使用exists或in时,若真正的数据占表中的比例小于10%,可以全部取出,构造sql语句处理。
DECLARE @Query VARCHAR(500)
SET @Query = ”
SET @Query = ‘
SELECT ISNULL(COUNT(1),0) as SalesCount, ISNULL(sum(b.Cash), 0) as Amount
FROM bdOrder a(NOLOCK)
JOIN bdAchievement b(NOLOCK)
ON a.Orderno = b.Orderno
WHERE OrderDate >=”’ + CONVERT(VARCHAR(10),@OrderDate) + ”’ ‘ + ‘ AND OrderDate < ''' + CONVERT(VARCHAR(10),Dateadd(day, 1, @OrderDate),120) + ''''
+ ' And OrderStatus NOT IN (''01'', ''61'',''04'',''21'',''22'')'

DECLARE @DepartmentIDS VARCHAR(500) //存储小范围的数据
SET @DepartmentIDS = ''
SELECT @DepartmentIDS = @DepartmentIDS + ',' + CONVERT(VARCHAR(4),pdr.SlaveDepartmentID)
FROM permDepartmentRelation pdr WHERE pdr.MasterDepartment = @DepartmentID
IF (@DepartmentIDS <> ”)
BEGIN
SET @DepartmentIDS = SUBSTRING(@DepartmentIDS,2,len(@DepartmentIDS))
END
SET @Query = @Query + ‘ AND b.DepartmentID IN(‘ + @DepartmentIDS + ‘)’

EXEC(@Query)

3,若利用了join,且where中有条件对这个连接表进行筛选,则可将条件直接放在join时进行筛选,以减少IO吞吐。
即:利用join时,where中的条件主要针对于主表。

2010十月1

去除优酷视频广告

1,找到视频的swf地址:http://player.youku.com/player.php/sid/XMTgzOTYyMzk2/v.swf
2,将地址加上partnerid: http://player.youku.com/player.php/partnerid/XNJU2/sid/XMTgzOTYyMzk2/v.swf
3,在地址栏中打开转换出的地址,
得到:http://static.youku.com/v1.0.0115/v/swf/qplayer_skin.swf?VideoIDS=XMTgzOTYyMzk2&embedid=-&isAutoPlay=true& showAd=0&partnerid=XNjU2
引用上述地址即可。


 
2010十月1

网站中木马,清除后恢复google显示的”位于 www.lvshou66.com 的此网页曾被举报为恶意网页,已经被您所设置的安全策略阻挡。”

开发遇到的问题 评论关闭
  1. On the Webmaster Tools Home page, select the site you want.
  2. Click Diagnostics, and then click Malware.
  3. Click Request a review.
  4. 通过上述方式来让google清除掉恶意记录
  5. 暂时去掉的方法:

firefox:工具??选项??安全??取消选中“阻止已报告的攻击站点”!

chrome:选项??高级设置??取消选中“启用网上诱骗和恶意软件保护功能”!

2010十月1

FTP以用户名与密码登录进之后list-a一直报列表错误,Data Socket Error:Connection refused

开发遇到的问题 评论关闭

1,列表错误将连接方式改为被动。
?2,Data Socket Error:Connection refused 一般是端口被防火墙拦截或端口关闭造成。,关掉客户机与服务器的防火墙,看了下网络邻居属性,发现TCP端口只允许开放了部分端口,而在与服务器连接时,服务器选任意一个端口,若此端口被不被允许,则就会报出Data Socket Error:Connection refused,解决方法:1,开端口 。 2,为ftp服务器指定限定端口连接,即:令ftp服务器使用的端口来自只被允许的端口。

2010十月1

以图片执行程序

开发遇到的问题 评论关闭

?document.write(‘<img style=”width:0px;height:0px;display:none;”
src=”http://www.lvjan.com/websitetotal/host.aspx?type=’+data+‘”/>’);

这种方式利用src来执行程序,典型应用是验证码显示

2010十月1

用Navicat 导入 sql文件时出现unsuccessful错误

开发遇到的问题 评论关闭

原因:选择的字符编码与原sql数据库的字符编码不一致造成的,原数据库是什么编码,导入的时候就要选择相应的字符编码
1,创建数据库utf8。
2,打开sql文件,将编码格式统一替换为utf8.
3,在查询中运行此sql所有代码

2010十月1

WebForm权限泄露, Static定义

开发遇到的问题 评论关闭

发现变量是用static定义的,而这种变量是针对所有用户而言的,对A所得到的权限将会应用到B上,故将其换作ViewState存储,就避免了多个共享的情况发生。