解决Joomla登录后台时500-发生一个错误

Joomla的登录一直正常,突然有一天,我朋友跟我说登录不了了,显示以下500的错误

这让我很是困惑,一方面解决windows服务器下的web应用问题真的很不爽,机器不能像Linux那样登录,还只能用ftp把代码下载下来慢慢看。

在网上搜索了很久,开始的时候以为密码错了。找到官方给出找回密码的方法,点击

但仍然不成功。说实话,对于这种问题,我们要能定位错误发生在那里就好了。下面的解决之道:

第一步: 打开debug开关,这样能正确定位,到底出错发生在哪里

修改configuration.php文件,将debug的值设置为1

第二步:再一次登录,发现报出以下问题:

错误

JAuthentication: :__construct:无法加载身份验证库。
Call stack
#	Function	Location
1	JAdministrator->dispatch()	JROOT\administrator\index.php:46
2	JComponentHelper::renderComponent()	JROOT\administrator\includes\application.php:153
3	JComponentHelper::executeComponent()	JROOT\libraries\joomla\application\component\helper.php:351
4	require_once()	JROOT\libraries\joomla\application\component\helper.php:383
5	JController->execute()	JROOT\administrator\components\com_login\login.php:19
6	LoginController->login()	JROOT\libraries\joomla\application\component\controller.php:761
7	JAdministrator->login()	JROOT\administrator\components\com_login\controller.php:57
8	JApplication->login()	JROOT\administrator\includes\application.php:234
9	JAuthentication::getInstance()	JROOT\libraries\joomla\application\application.php:669
10	JAuthentication->__construct()	JROOT\libraries\joomla\user\authentication.php:143
11	JError::raiseWarning()	JROOT\libraries\joomla\user\authentication.php:127
12	JError::raise()	JROOT\libraries\joomla\error\error.php:276
JFolder::create: 无法创建目录
Path: \var

Call stack
#	Function	Location
1	JAdministrator->dispatch()	JROOT\administrator\index.php:46
2	JComponentHelper::renderComponent()	JROOT\administrator\includes\application.php:153
3	JComponentHelper::executeComponent()	JROOT\libraries\joomla\application\component\helper.php:351
4	require_once()	JROOT\libraries\joomla\application\component\helper.php:383
5	JController->execute()	JROOT\administrator\components\com_login\login.php:19
6	LoginController->login()	JROOT\libraries\joomla\application\component\controller.php:761
7	JAdministrator->login()	JROOT\administrator\components\com_login\controller.php:57
8	JApplication->login()	JROOT\administrator\includes\application.php:234
9	JApplication->triggerEvent()	JROOT\libraries\joomla\application\application.php:745
10	JDispatcher->trigger()	JROOT\libraries\joomla\application\application.php:642
11	JEvent->update()	JROOT\libraries\joomla\event\dispatcher.php:161
12	plgSystemLog->onUserLoginFailure()	JROOT\libraries\joomla\event\event.php:71
13	JLog->addEntry()	JROOT\plugins\system\log\log.php:41
14	JLog->addLogEntry()	JROOT\libraries\joomla\log\log.php:346
15	JLoggerFormattedText->addEntry()	JROOT\libraries\joomla\log\log.php:382
16	JLoggerFormattedText->initFile()	JROOT\libraries\joomla\log\loggers\formattedtext.php:137
17	JFolder::create()	JROOT\libraries\joomla\log\loggers\formattedtext.php:237
18	JFolder::create()	JROOT\libraries\joomla\filesystem\folder.php:188
19	JFolder::create()	JROOT\libraries\joomla\filesystem\folder.php:188
20	JFolder::create()	JROOT\libraries\joomla\filesystem\folder.php:188
21	JFolder::create()	JROOT\libraries\joomla\filesystem\folder.php:188
22	JFolder::create()	JROOT\libraries\joomla\filesystem\folder.php:188
23	JFolder::create()	JROOT\libraries\joomla\filesystem\folder.php:188
24	JError::raiseWarning()	JROOT\libraries\joomla\filesystem\folder.php:264
25	JError::raise()	JROOT\libraries\joomla\error\error.php:276

Call stack
#	Function	Location
1	JAdministrator->dispatch()	JROOT\administrator\index.php:46
2	JError::raiseError()	JROOT\administrator\includes\application.php:164
3	JError::raise()	JROOT\libraries\joomla\error\error.php:251

第三步:解决以下问题

首先解决第一个问题:无法加载身体验证库

修改数据库里对应表xx_extensions (xx根据你的网站设定的)里的plg_authentication_joomla对应的这行enabled值改为1

然后解决第二个问题:这个问题的产生是因为

configuration.php这个文件里的$log_path 和$tmp_path这两个变量配置有问题,原始的为:

说实话,要是服务器是Linux系统,完全没问题,但windows系统就是没有这样的路径,将它们的值改为如下:

然后登录就没有问题了!

(注意:网站根目录下的logs 和 tmp目录要有读写权限)

时间: 2024-10-10 21:41:46

解决Joomla登录后台时500-发生一个错误的相关文章

VS2013 C# 调用 cognex 的QuickBuild做程序时发生一个错误

今天在用 VS2013 C# 调用 cognex 的QuickBuild做程序时发生一个错误,如下所示 混合模式程序集是针对"v2.0.50727"版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集 网上搜索得到解决办法: 在app.config中添加一个配置节:startup <startup useLegacyV2RuntimeActivationPolicy="true"> <supportedRuntime

(转)金蝶KIS迷你版、标准版在查询数量金额明细账时提示“发生未知错误,系统当前操作被取消,请与金蝶公司联系”

金蝶KIS迷你版.标准版在查询数量金额明细账时提示“发生未知错误,系统当前操作被取消,请与金蝶公司联系” 2013-07-10 12:17:51|  分类: 金蝶专题|举报|字号 订阅 金蝶KIS迷你版.标准版在查询数量金额明细账时提示“发生未知错误,系统当前操作被取消,请与金蝶公司的技术支持机构联系” 问题描述:厦门金蝶KIS迷你版.标准版在查询数量金额明细账时提示“发生未知错误,系统当前操作被取消,请与金蝶公司的技术支持机构联系”.但是选择“确定”后仍然可以查询到数据.问题原因: GLQty

sqlplus连接登录数据库时,出现 ORA-28009错误(转)

安装了oracle10g,打算用SQLPLUS 登录数据库进行操作.打开sqlplus后,可以看到要求输入用户名,口令和主机字符串.前面两个都知道,但是后一个却不明白,查了资料才知道是安装时的全局数据库名,也就是SID. 知道了这点后,我用sys登录,输入用户名,口令和主机字符串登录,但却出错.错误如下 ERROR: ORA-28009:connection as SYS should be as SYSDBA or SYSOPER. 它的意思是我登录的用户名sys应该是数据库管理员,所以要用数

exchange IE登录提示http 500 内部服务器错误

故障现象: exchange 2010重启后 owa 能打开,输入用户名及密码后,无法访问 "http 500 内部服务器错误",OUTLOOK使用正常. 解决步骤: 因为之前有换过服务器,旧的服务器一直没有彻底退出来,弄了好久,成功了.过年前把旧的服务器关了.所以就想会不会是因为这个旧服务器还没有彻底失效呢,于是再启动服务器,故障依旧. 因为outlook可以用,所以可认定是OUTLOOK WEB APP方面的问题,又首页可以打开,只是输入密码后提示错误,HTTP500的错误一般就是

如何解决:登录桌面时自动运行的EXE提示“该程序没有与之关联来执行操作”,之后出现蓝屏代码0xc000021a

问题描述 软件中有个模块在开机自动运行,并且会启动另外一个EXE(其中会获取一些硬件信息,用户信息,网络信息等). 系统新建一个用户后,在登录新用户时,首次登录系统会创建用户目录,初始化桌面,outlook信息,IE信息等,在此过程中开机自动运行模块就启动了另外一个EXE,此时报错并弹出提示框"该程序没有与之关联来执行操作.....". 错误分析 1)蓝屏代码0xc000021a,百度发现该蓝屏代码有人说是用户子系统损坏导致的,需要重装系统. 2)"该程序没有与之关联来执行操

使用STL map和模板时遇到的一个错误

代码: template<typename T, typename U> bool MapContainsKey(const map<T,U>& m,T key) { for (map<T, U>::iterator it = m.begin(); it != m.end(); ++it)//差点玩死我 { if (it->first == key) { return true; } } return false; } 报错如下:=============

ubuntu上安装Eclipse时遇到的一个错误

A Java Runtime Environment (JRE) or Java Development Kit (JDK)must be available in order to run Eclipse Installer. No Java virtual machinewas found after searching the following locations:/opt/eclipse-installer/jre/bin/javajava in your current PATH 这

linux使用su切换用户提示 Authentication failure的解决方法&amp; 复制文件时,报cp: omitting directory `XXX&#39;

linux使用su切换用户提示 Authentication failure的解决方法:这个问题产生的原因是由于ubtun系统默认是没有激活root用户的,需要我们手工进行操作,在命令行界面下,或者在终端中输入如下命令: sudo passwd Password:你当前的密码 Enter new UNIX password:这个是root的密码Retype new UNIX password:重复root的密码然后会提示成功的信息. 在说明一点,使用su和sudo是有区别的,使用su切换用户需要

COM组件DLL引用时出现检索组件错误

前情提要: 市面上有一套系统软件,其中某个功能的程序是使用COM组件开发的,我希望使用它的这个功能,所有我引用了他的COM组件DLL. 但是程序执行时出现了一个错误,错误如下图: 这个错误一般都是我们引用的COM组件没有注册引起的.但是当我使用regedit命令去注册组件时,总是无法注册报了一个错误 使用regsvr32.dll注册时出现这个问题. 我把这个程序拿到另一台电脑上使用时,没有报错,能够正常的运行,那台点脑安装了原版的程序.所以没有报这个错误. 因为单独注册dll没有成功,我只能采用