节点目录名引起的不能上传文件的问题
问题:新建的一个节点,发现在这个节点里上传文件时没有任何反应,并且查看上传文件夹也没有发现此节点的上传文件夹,但其它节点上传没有问题,这是什么原因?
分析:这是一个比较特殊的问题,首先查看节点设置(这里因为未考虑到一个特殊的原因,所以忽略了问题所在),没有发现什么问题,再查网站文件夹的权限设置问题,也正常,IIS设置均没有异常,问题是似陷入的僵局阶段。。。。。。
经过偶然发现,此节点的目录名设置是为“con”
经过查找相关信息发现原因就出在这个名称上面,下面截取部份原因说明:
在Windows界面中创建一个特殊文件夹时,计算机系统会自主地将文件夹名称修改为“新建文件夹”,而无法将我们指定的文件夹名称显示出来;例如当我们尝试将某一文件夹名称指定为“prn”或“con”时,Windows 系统会自动将我们指定的名称显示为“新建文件夹”。。。。。。
因此问题的原因就出在这里,那么下面就有两种方式来解决这个问题。
解决:因为节点目录名一旦在建好节点后,是不可修改的,所以我们得根据网站的情况来做如下操作:
1、删除此节点,重新建节点,并注意文件夹名不要取“特殊”名称 ---这个方式适用于刚刚新建的节点,如果已经在这个节点下建好了许多子节点,并且不想再重复操作的情况下,可以用第二种方式。
2、直接操作数据库进行数据修改,数据信息在表中的原样式为:
我们打开查询分析器,打开pe_nodes表进行数据批量修改操作,下面是SQL语句,大家可参照执行
a、首先修改父节点的目录名
UPDATE PE_NODES SET NodeDir = 'XXX' WHERE NodeName ='科学'
b、然后修改其下的子节点的“ParentDir”数据
UPDATE PE_NODES SET ParentDir = REPLACE(CASE(ParentDir AS varchar(8000)), 'con', 'XXX')
修改后数据显示如下图
-------以上的SQL语句里的“XXX”字符可以根据自己需求改成其它英文字符,同时要记住一点,在操作数据库时,一定要先备份好数据库。
至此问题就已经处理完毕,网站可以正常使用。