在共享服务器上托管后出现joomla错误

时间:2014-11-28 18:13:12

标签: joomla3.0 eaccelerator

我设计了一个新的joomla3网站。在我的电脑上进行开发时,它运行正常。 一旦我使用akeeba备份和kickstart恢复工具在共享主机上设置了此功能。 报告了以下错误:

Fatal error: Invalid opcode 153/1/8. in /home/myinnori/public_html/tawasr/libraries/joomla/filter/input.php on line 702

任何人都可以帮我解决这个问题。

我试过在" .htaccess"中启用每组变量。文件来自" public_html"我的托管帐户的文件夹。

更新:

line 701    // Convert decimal
line 702    $source = preg_replace_callback('/&#(\d+);/m', function($m)
line 703    {
line 704    return utf8_encode(chr($m[1]));
line 705    }, $source
line 706    );

3 个答案:

答案 0 :(得分:0)

  • 请在这里分享input.php页面的源代码。
  • 我认为你的问题是关于你的残疾人或有限的图书馆 共享虚拟主机。
  • 如果您有preg_replace函数,这是您的问题!根据 php.net和出于安全原因许多共享主机提供使用 preg_replace_callback()而不是preg_replace(),但你可以共享 input.php源代码以获得更好的帮助

    http://php.net/manual/en/function.preg-replace.php

    特别感谢

答案 1 :(得分:0)

好的,您应该在.htaccess文件中插入2行,类似于下面的内容:

php_flag eaccelerator.enable 0
php_flag eaccelerator.optimizer 0 

并在httpd.conf中添加以下行(与您的托管支持中心联系)

<IfModule mod_php5.c>
php_flag eaccelerator.enable 0
php_flag eaccelerator.optimizer 0
</IfModule>

source(forum.joomla.org)

答案 2 :(得分:0)

关于php的内联函数存在一个问题。 我的服务器上的PHP不支持有回调的内联函数。 我使用了preg_replace()而不是preg_replace_callback(),问题解决了。使用以下代码,只需将第二个参数保留为空字符串,如下面的代码

$source = preg_replace('/&#x([a-f0-9]+);/mi', "", $source
    );