升级到Xampp 1.8.1后,无法查看我的网站

时间:2012-11-06 06:18:23

标签: joomla xampp upgrade

我使用的是xampp 1.7.0,但刚决定升级到xampp 1.8.1。我卸载了1.7但没有卸载htdocs和mysql服务器 我现在安装了1.8并通过xampp安全页面为xampp目录和mysql创建密码。 不幸的是,我无法再次查看我的网站,它们都会出错,这是一个示例错误:

Strict Standards: Non-static method JLoader::import() should not be called statically in C:\xampp\htdocs\3nity\libraries\joomla\import.php on line 29
Strict Standards: Non-static method JLoader::register() should not be called statically in C:\xampp\htdocs\3nity\libraries\loader.php on line 71
Strict Standards: Non-static method JLoader::import() should not be called statically in C:\xampp\htdocs\3nity\libraries\joomla\import.php on line 32
Strict Standards: Non-static method JLoader::register() should not be called statically in C:\xampp\htdocs\3nity\libraries\loader.php on line 71
Strict Standards: Non-static method JLoader::register() should not be called statically in C:\xampp\htdocs\3nity\libraries\loader.php on line 138
Strict Standards: Non-static method JRequest::clean() should not be called statically in C:\xampp\htdocs\3nity\libraries\joomla\import.php on line 33
Strict Standards: Non-static method JRequest::_cleanArray() should not be called statically in C:\xampp\htdocs\3nity\libraries\joomla\environment\request.php on line 463

请问我该怎么办,因为我现在没有备份所有网站,现在手头有5年的现有客户项目。

我使用win 7操作系统64位,使用xampp-win32-1.8.1-VC9-installer。

2 个答案:

答案 0 :(得分:2)

这可能是由于最新XAMPP中不同(较新)的PHP版本所致。 PHP 5.4(确切地说是PHP 5.4.7)对于错误代码的警告更加严格。

真正的问题在于实际的PHP代码(无论是你的代码还是代码中使用的代码,如Joomla)。

如果它来自您的代码,您应该修复它。通过静态方式访问静态方法属性或属性(例如class Foo { public static $bar = 123; }Foo::$bar来访问它),class Bar { public static function foo() { } }Bar::foo()来调用它。请注意我们如何使用::而不是->。这意味着没有活动的实例化状态(换句话说,$bar = new Bar(); $bar->foo();不正确,因为它将其称为实例方法而不是静态通过{{1} })。

同样,如果问题是相反的,那么开发人员可能必须将方法声明为Bar::foo(),如果它是无状态的并且是静态调用的。

对于Joomla案件,似乎已有各种报道:

(通过在Google中粘贴错误找到!)

详细了解状态与静态之间的区别:

如果您只有警告(而不是错误),请查看“php error_reporting”以了解如何禁用这些无辜警告(通过降低错误报告级别)。这样你就可以减少噪音,并可以专注于重要的事情。

在开发过程中,您可能不应该隐藏任何警告,以便您可以发现它们并改进代码。但在生产中,最好隐藏警告并仅记录错误。

答案 1 :(得分:0)

在浏览完所有信息和链接后,我能够克服严格的标准问题。我之前做出的更改没有反映,因为我正在更改错误行的值。 这就是我做的: 我不得不编辑第535行&我的php.ini文件的552并将显示错误设置为OFF并使用此设置:error_reporting = E_ALL& 〜E_NOTICE。 Joomla 1.5和2.5网站都不会再次出错。 感谢大家。