织梦后台登陆不了出现这样问题原因?
网上有两种解决方法:
一种是说你曾用记事本编辑过dede的php文件
2是说你得修改
找include/userloginclassphp里面的keepuser()函数,
把@session_register 全部改写, 虽然不知道这个@是什么意思
把@session_register($this->keepUserIDTag); 注释掉,然后改为
if (!isset($_SESSION[$this->keepUserIDTag]))
全部有6个。
如下:
if (!isset($_SESSION[$this->keepUserIDTag]))
//@session_register($this->keepUserIDTag);
$_SESSION[$this->keepUserIDTag] = $this->userID;
if (!isset($_SESSION[$this->keepUserTypeTag]))
//@session_register($this->keepUserTypeTag);
$_SESSION[$this->keepUserTypeTag] = $this->userType;
if (!isset($_SESSION[$this->keepUserChannelTag]))
//@session_register($this->keepUserChannelTag);
$_SESSION[$this->keepUserChannelTag] = $this->userChannel;
if (!isset($_SESSION[$this->keepUserNameTag]))
//@session_register($this->keepUserNameTag);
$_SESSION[$this->keepUserNameTag] = $this->userName;
if (!isset($_SESSION[$this->keepUserPurviewTag]))
//@session_register($this->keepUserPurviewTag);
$_SESSION[$this->keepUserPurviewTag] = $this->userPurview;
if (!isset($_SESSION[$this->keepAdminStyleTag]))
//@session_register($this->keepAdminStyleTag);
$_SESSION[$this->keepAdminStyleTag] = $adminstyle;
然后就可以登入后台了。
我用的第二种方法解决的
在配置前需要确认你的空间是否支持htaccess和rewrite,该方法基于htaccess文件中使用rewrite来达到禁止指定脚本的运行效果。
RewriteEngine on RewriteCond % !^$
RewriteRule uploads/()(php)$ – [F]
RewriteRule data/()(php)$ – [F]
RewriteRule templets/()(php)$ – [F]
针对uploads,data,templets 三个目录做了执行php脚本限制;
将如上内容存储至到hatccess文件中,将该文件存放到你的站点根目录下,
Service Unavailable
一、 如果出现“Service Unavailable”的提示,刷新几下又可以访问。
出现这种情况是由于您的网站超过了iis限制造成的由于2003的操作系统在提示IIS过多时并非像2000系统提示“链接人数过多”,而是提示"Service Unavailable",出现这种情况是由于网站超过了系统资源限制造成的,主要是程序占用资源太多。
比如同样是100人在线的论坛,雷傲论坛所占的资源就是PW论坛所占资源的10倍以上;另外,一些死循环程序,或者不优化的程序都会占用太多的系统资源,而系统资源明显是有限的。不过WINDOWS2003的操作系统,各网站之间是以独立进程运行的,不会相互影响。
如果一个网站的程序占资源太多或者发生太多的错误,系统日志就会提示:“应用程序池 'xxx' 被自动禁用,原因是为此应用程序池提供服务的进程中出现一系列错误,或者提示:应用程序池 'xxx' 超过了其作业限制设置。这时,访问这个网站就会提示:Service Unavailable。一般系统会在30秒左右恢复正常,多刷新几次就能正常访问了。
另外,如果你的网站当前访问人数过多,超过了系统的iis连接数限制,也会出现Service Unavailable的提示(win2k主机下出现连接过多就会提示:连接过多,请稍后再试;而win2003的主机刚直接提示:Service Unavailable)
二、没有限制IIS连接,还是遭遇Service Unavailable
多见于使用ACCESS数据库的网站,一般使用windows 2003 IIS 6的用户可能这个问题一直正常的系统,突然有一个网站打不开了提示: Service Unavailable 但这个网站并没有限制IIS连接数。然后马上影响到了别的网站,不到一会,其他的网站也全变成了 Service Unavailable 这是什么原因呢?
我们分析后可以知道,还是MS的老问题。ACCESS引擎当了。用服务器医生的文件医生修复,查看修复结果时会发现一些文件引起ACCESS引擎“灾难性故障”及“未将对象引用设置到对象的实例”的错误。 通过文件医生修复后,系统才会恢复正常。
整理:
三、浏览一个 Windows SharePoint Services Web 站点时,提示:Service Unavailable
Microsoft Internet 信息服务 (IIS) 60 中没有正确地配置用于虚拟服务器的应用程序池,就可能会发生此问题。
解决方案:
要解决此问题,按照下列步骤操作:
1、验证是否已为虚拟服务器配置了应用程序池。默认的应用程序池是 MSSharePointPortalAppPool。
请按照下列步骤来确定虚拟服务器正在使用的应用程序池。
a) 单击“开始”,指向“管理工具”,然后单击“Internet 信息服务 (IIS) 管理器”。
b) 展开“ServerName”,展开“Web 站点”,右键单击虚拟服务器,然后单击“属性”。
c) 单击“主目录”选项卡。 为虚拟服务器配置的应用程序池列在“应用程序池”框中。
d) 单击“确定”。
2、验证应用程序池帐户使用的密码是否正确。IIS 不会自动轮询 Active Directory 目录服务中的密码更改。如果应用程序池帐户是一个域帐户,其密码已过期,则在为此帐户重新指定一个新密码后,您可能会收到本文“症状”部分所描述的错误信息。
3、 验证应用程序池帐户是服务器上的 IIS_WPG 组和 STS_WPG 组的成员。
4、重新启动 IIS 以回收应用程序池
四、没有正确加载ISAPI筛选器
ISAPI筛选器没有加载成功的话会造成任意网站一访问就出现Service unavailable,这个时候需要根据加载失败的原因解决,或者删除该ISAPI筛选器
整理资料:
原因一:网站超过了IIS连接数
解决办法一:增加IIS连接数
备注一:Windows 2003的操作系统在提示IIS过多时并非像win2000系统提示“链接人数过多”,而是提示"Service Unavailable"
原因二:网站超过了IIS资源限制
解决办法二:增加网站的资源
备注二:Winodws2003中网站占用了超过IIS对该网站系统资源的限制后直接提示"Service Unavailable"
原因三:网站的程序发生太多的错误
解决办法三:修改程序错误
备注三:Winodws2003中网站错误太多,就会造成该网站所在的应用程序池出错,这个时候可以在Windows2003的日志中看到“应用程序池 'xxx' 被自动禁用,原因是为此应用程序池提供服务的进程中出现一系列错误”,这个时候网站就会直接显示"Service Unavailable"
以上三个原因造成的"Service Unavailable",一般现象是出现"Service Unavailable"后,多刷新几次,就可以打开。
原因四:ACCESS引擎错误
解决办法四:重启IIS
备注四:有一些文件造成了ACCESS数据库出现“灾难性故障”及“未将对象引用设置到对象的实例”的错误
原因四造成的"Service Unavailable",现象是所有该服务器上的使用Access数据库的网站都出现错误,不能访问。
以上四个原因是常见的造成了"Service Unavailable"的原因,其他还有一些问题造成了该问题,基本只要IIS重启一下就可以的。
Service Unavailable的第五种原因就是今天的原因了:ISAPI筛选器没有正常加载
可能是这样的:
你之前生成过静态首页,系统会自动在根目录生成一个静态首页文件indexhtml,之后你又删除掉了indexhtml或者后台改为生成动态首页,而浏览器缓存还默认打开的是域名/indexhtml,显然已经不存在了。
可以尝试清除浏览器缓存,刷新。
0条评论