Hostgator将PHP版本更新到7.1?

时间:2018-08-06 22:31:39

标签: php laravel

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

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

然后我要求他们重置服务器,他们说我必须等待电子邮件确认,这花了2天的时间。将我的服务器重置为默认设置和默认文件。再次尝试PHP选择器,但没有成功。这位女士叫客户支持,告诉我她自己进行了更新,并等待在我端看到它。 “应该在任何时候发生。”没有变化。

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

我并不在意,我只想解释一下我尝试过的所有内容,以及此时客户支持的选择不是很多。

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

5 个答案:

答案 0 :(得分:7)

在共享主机帐户上,您可能需要提供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的系统路径替换composer.phar),然后运行:

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

答案 1 :(得分:1)

只需修改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>

  # NEW PHP 7.3 automatically added by Hostgator to new domains since ~June 2020 (appears to have no MySQL extension either)
#<IfModule mime_module>
#  AddHandler application/x-httpd-ea-php73 .php .php7 .phtml
#</IfModule>

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

答案 2 :(得分:0)

要扩展上述响应,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 :(得分:0)

对于其价值,在HostGator cPanel中的@Devon答案中,请确保从public_html目录中选择php 7.1(而非Edge)。最终使它对我有用。

答案 4 :(得分:0)

我发现这篇文章也有同样的问题,这是因为我没有在PHP选择器中单击“ PUBLIC-HOME”文件夹,然后将其更新为7.1。通过HostGator提供的实时聊天支持的Jasper可以帮助解决我的问题。在他告诉我之后,这似乎很明显,但是我完全隔开了,被卡住了,所以,如果有人像我一样阅读此书,也许这也会对你有帮助