【问题标题】:Hostgator update PHP version to 7.1?Hostgator 将 PHP 版本更新到 7.1?
【发布时间】:2019-01-13 22:27:51
【问题描述】:

Hostgator 客户支持绝对没用。我已经尝试了 3 天来更新我的 PHP 版本,以便我可以安装 Laravel 5.6。我在 cPanel 中尝试了 PHP Selector 插件,这似乎是更新 PHP 版本的唯一方法。

即使在 PHP 选择器插件中将每个目录更新为 7.1 后,它仍然无法正常工作。 3 天前我打电话给技术支持,并与 3 个不同的代表交谈,每个代表都以迂回的方式告诉我他们对此无能为力,并尴尬地道歉。

然后我要求他们重置我的服务器,他们说我必须等待电子邮件确认,这需要 2 天才能到达。将我的服务器重置为默认设置和默认文件。再次尝试 PHP 选择器,但没有成功。打电话给客户支持,这位女士告诉我她自己更新了它,等着看我的结果。 “它应该随时发生。”没有变化。

我正在使用我的 SSH 和 php -v 命令检查我的 PHP 版本。它总是说我有 PHP 5.4,当尝试使用 composer create-project --prefer-dist laravel/laravel=5.6 时,它返回一个错误,指出我的 PHP 版本是 5.4 且不兼容。

我不是在咆哮,我只是想解释一下我尝试过的所有事情的全部范围,以及在这一点上客户支持不是一个很好的选择。

有没有人有任何在 Hostgator 上更新 PHP 的个人经验?我有一个共享帐户。谢谢。

【问题讨论】:

    标签: php laravel


    【解决方案1】:

    在共享主机帐户上,您可能需要提供 PHP 的完整路径并且不能依赖系统二进制文件,因为它们可能安装了多个版本的 PHP,并且如果它们运行的​​是 Enterprise Linux 7,则系统二进制文件几乎总是 PHP 5.4。

    使用此处的信息:https://support.hostgator.com/articles/specialized-help/technical/linux-application-paths-what-is-the-path-to,我可以假设 7.1 的路径是 /opt/php71/bin/php

    所以下载composer.phar(或者将composer.phar替换为composer的系统路径),然后运行:

    /opt/php71/bin/php composer.phar create-project --prefer-dist laravel/laravel=5.6
    

    【讨论】:

    • 太棒了,非常感谢。您在 15 分钟内解决了 Hostgator“支持专家”在 3 天内无法解决的问题。非常感谢。
    【解决方案2】:

    为了扩展上述响应,php 的命令行 (cli) 版本不一定与在 cpanel 中选择的版本相同。可以使用 ls /opt 查看php版本文件夹是否存在。

    所以如果你想用 7.1 更新你的 php 命令,你应该编辑你的 '~/.bash_profile' 并附加以下行:

    alias php='/opt/php71/bin/php'
    

    如果您没有看到更改,您可能需要注销并重新登录,或者您可以键入 '. ~/.bash_profile'

    现在,当你使用 php -v 时,如果你做得对,它应该是 7.0.x。

    这与 7.0 相同,任何其他 php 版本都应位于同一目录中。

    【讨论】:

      【解决方案3】:

      对于它的价值,在您的 HostGator cPanel 中添加@Devon 的答案,确保从您的 public_html 目录中选择 php 7.1(不是 Edge)。这就是最终让它为我工作的原因。

      【讨论】:

        【解决方案4】:

        我发现这篇文章有同样的问题,这是因为我没有点击 PHP 选择器中的“public_html”文件夹,然后我将它更新到 7.1。来自 HostGator 实时聊天支持的 Jasper 能够帮助并解决我的问题。在他告诉我之后,这似乎很明显,但我完全保持距离并且被卡住了,所以如果其他人像我一样阅读这篇文章 - 也许这也会对你有所帮助哈哈

        【讨论】:

        • 另外,如果 public_html 不起作用,您必须单击要应用它的每个网站文件夹。
        【解决方案5】:

        只需修改 HTACCESS 文件:

        正如另一个答案 over here 中所解释的,在 htaccess 文件中使用以下代码(以 # 开头的行被注释掉):

          # Use PHP 5.6
        #AddHandler application/x-httpd-php56 .php
        #<IfModule mod_suphp.c>
        #    suPHP_ConfigPath /opt/php56/lib
        #</IfModule>
        
          # Use PHP 7.1
        #AddHandler application/x-httpd-php71 .php
        #<IfModule mod_suphp.c>
        #    suPHP_ConfigPath /opt/php71/lib
        #</IfModule>
        
          # Use PHP 7.2 (appears to have no MySQL extension)
        #AddHandler application/x-httpd-ea-php72 .php .php7 .phtml
        #<IfModule mod_suphp.c>
        #    suPHP_ConfigPath /opt/php72/lib
        #</IfModule>
        
          # PHP 7.3 (appears to have no MySQL extension either)
        #<IfModule mime_module>
        #  AddHandler application/x-httpd-ea-php73 .php .php7 .phtml
        #</IfModule>
        
          # NEW PHP 7.4 (automatically added by Hostgator to new domains since ~Jan 2021)
        <IfModule mime_module>
          AddHandler application/x-httpd-ea-php74 .php .php7 .phtml
        </IfModule>
        

        额外的注释行适用于较新的版本,但似乎只有 7.1 具有 MySQL 扩展(直到现在,2017 年 7 月)。

        注意:自 2021 年 3 月起,将不再支持旧版本的 PHP(低于 7.4)。此外,Hostgator 还添加了一个“MultiPHP 管理器”,因此您可以从 cPanel 中不太复杂的部分进行管理

        【讨论】:

          猜你喜欢
          • 2019-03-08
          • 1970-01-01
          • 2022-11-08
          • 2018-01-26
          • 2019-10-08
          • 1970-01-01
          • 2020-03-06
          • 2015-08-27
          • 2018-07-31
          相关资源
          最近更新 更多