1

当我尝试在我的主机 (HostGator) 中上传新版本时,我的项目有一个问题。

这是错误:

PHP Startup: SourceGuardian: Unable to initialize module
Module 编译的模块 API=20131226
PHP 编译的模块 API=20100525
这些选项需要匹配

我在 cPanel 中将 PHP 5.4 的版本更改为 5.6,但是当我从与 putty 的连接中检查服务器中的 PHP 版本时,我收到以下消息:

PHP 5.4.45 (cli) (built: Apr 17 2017 15:59:08)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
    with the ionCube PHP Loader (已启用)+ ioncube24.com(未配置)v10.2.4 的入侵保护,版权所有 (c) 2002-2018,由 ionCube Ltd.
    使用 Zend Guard Loader v3.3,版权所有 (c) 1998-2013,由 Zend Technologies

也许这可能是问题所在?我读到了这个错误,但我无法得到解决方案。我不知道我是否做错了什么。

4

4 回答 4

3

只需修改 HTACCESS 文件:

首先,Hostgator 将在 2020 年 10 月之前弃用 7.2 之前的版本。

其次,如果以下解决方案不能解决您的问题,请确保父文件夹中没有具有不同说明的 .htaccess 文件(MySQL 模块似乎由文件夹层次结构中指示的第一个版本指示,而 PHP 由最后一个指示)。

在 htaccess 文件中使用以下代码(以 # 开头的行被注释掉):

  # Use PHP 5.4 (will no longer be available in Oct 2020)
#AddHandler application/x-httpd-php54 .php
#<IfModule mod_suphp.c>
#    suPHP_ConfigPath /opt/php54/lib
#</IfModule>

  # Use PHP 5.6 (will no longer be available in Oct 2020)
#AddHandler application/x-httpd-php56 .php
#<IfModule mod_suphp.c>
#    suPHP_ConfigPath /opt/php56/lib
#</IfModule>

  # Use PHP 7.1 (will no longer be available in Oct 2020)
#AddHandler application/x-httpd-php71 .php
#<IfModule mod_suphp.c>
#    suPHP_ConfigPath /opt/php71/lib
#</IfModule>

  # Use PHP 7.2
#<IfModule mime_module>
#  AddHandler application/x-httpd-ea-php72 .php .php7 .phtml
#</IfModule>

  # Use PHP 7.3
#<IfModule mime_module>
#  AddHandler application/x-httpd-ea-php73 .php .php7 .phtml
#</IfModule>

  # Use PHP 7.4 (automatically asigned to new domains since ~Sept 2020)
<IfModule mime_module>
  AddHandler application/x-httpd-ea-php74 .php .php7 .phtml
</IfModule>

感谢 @anayarojo 提供 v7.2(2020 年 4 月)的提示。

于 2020-01-28T06:42:03.443 回答
1

php从命令行调用的二进制文件可能与phpApache 使用的二进制文件相同,也可能不同。您应该使用以下 PHP 脚本(将其保存到可公开访问的 Web 目录并在 Web 浏览器中加载它)来确定 Apache 配置为运行哪个 PHP 版本:

<?php
    phpinfo();
?>
于 2018-10-02T20:22:53.207 回答
1

只需将此行添加到您的 .htaccess 中,以便更新版本的 php 工作:

对于 PHP 7.2:

AddHandler application/x-httpd-ea-php72 .php .php7 .phtml 

对于 PHP 7.3:

AddHandler application/x-httpd-ea-php73 .php .php7 .phtml 
于 2020-06-02T15:32:00.513 回答
0

cPanel 提供了 2 种不同的方法来设置 php 版本。一种称为“选择 PHP 版本”,它将全局 php 版本设置为新域、cron 作业等的默认值,另一种是“MultiPHP 管理器”,它允许您设置不同版本的 php 以用于不同的域相同的 cPanel 帐户。您需要确保“MultiPHP 管理器”还列出了您的域的正确 php 版本(它可以覆盖“选择 PHP 版本”设置)。

于 2018-10-02T21:43:52.377 回答