标签: php7

PHP 在 Ubuntu 16.04 升级后呈现为文本

Apache 在 Ubuntu 16.04 升级后将 PHP 文件呈现为文本。

Apache 已安装并正在运行。PHP7 正在运行。当我执行以下命令时,我得到了正确的输出:

php -r 'echo "\n\nYour PHP installation is working fine.\n\n\n";'
Run Code Online (Sandbox Code Playgroud)

但是,当我访问http://localhost/info.php或任何其他 php 文件时,我得到的是文件内容而不是页面。

大多数在线帮助都是针对旧版本的 Ubuntu 和 PHP,所以我不确定它们是否可靠。

更新:安装 libapache2-mod-php7.0 并启用 php7.0 后,Apache 无法启动。见输出:

douglas@douglas-acer:~$ sudo service apache2 restart
douglas@douglas-acer:~$ sudo apt-get install libapache2-mod-php
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  libapache2-mod-php
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/2.960 …
Run Code Online (Sandbox Code Playgroud)

upgrade php apache2 16.04 php7

20
推荐指数
1
解决办法
4万
查看次数

如何在 16.04 LTS 中激活 PHP7.0 PDO?

我从 14.04LTS 升级到 16.04LTS;php5 到 php7.0;MySQL 到 5.7。Apache 和 PHP 正在运行,但在尝试访问 MySQL 数据库时,我得到以下信息:

fatal error: could not find driver
Run Code Online (Sandbox Code Playgroud)

phpinfo() 在 PDO Drivers Enabled 下显示“no value”。试图php.ini与 PHP5进行比较,但看不到任何明显的东西。我从这里去哪里?

php7

14
推荐指数
1
解决办法
10万
查看次数

在生产服务器上使用非官方 PHP PPA

我有一个关于我的 Ubuntu 服务器上的 PHP 更新的查询。

我注意到https://launchpad.net/~ondrej/+archive/ubuntu/php 的php 版本似乎比官方 ubuntu PHP 包的更新速度快得多。

我的主要用例是在这些 Ubuntu 服务器上运行 PHP 生产环境,虽然使用官方的 Ubuntu 存储库通常是最好的选择,但实际上使用“ondrej ppa”会更安全,因为它们得到了错误修复和 CVE 补丁考虑到我的主要用例是 PHP 服务器,速度要快得多?

理想情况下,我想在 PHP 核心团队发布后立即更新http://us3.php.net/ChangeLog-7.php#7.0.14这样的东西,而不是等x 个月让 ubuntu 打包. 根据我收集的信息,建议的 PPA 的软件包维护者似乎也是为 Debian 制作官方软件包的人。

在这个用例中在生产中使用非官方的东西有什么实际的缺点?你不推荐吗?


解决方案总结

基于评论中的答案和选定的解决方案。Canonical 将安全补丁应用于当前打包的 PHP 版本。因此,带有 Ubuntu 的官方软件包同样安全 - 但不会包含 PHP Core 团队添加的任何额外功能 - 这意味着它不会引入对许多用户来说很重要的错误/回归。

/〜的Ondrej PPA可以被认为在这种情况下值得信赖; 许多用户依赖 PPA,频繁更新,并且维护者是 Debian 软件包的核心维护者之一。

在我的例子中,我选择使用这个 PPA。因为它允许我利用 PHP 7.1 附带的功能

感谢你的帮助。

php ppa php7

14
推荐指数
1
解决办法
3423
查看次数

无法在 Ubuntu 20.04 上安装 PHP 7.2

我添加了 ondrej PPA。并尝试安装 php 7.2,但看起来 PPA 尚未更新。我的解决方法是什么?

php php7 20.04

14
推荐指数
2
解决办法
4万
查看次数

如何在 PHP 7.0 中启用 bcdiv 功能?

PHP 函数bcdiv默认不可用。如何在 PHP 配置中启用它?

php php7

12
推荐指数
2
解决办法
4万
查看次数

PHP 致命错误:第 0 行未知中的 sodium_init()

当我运行任何 php 脚本时,我在第 0 行的 Unknown 中收到一个错误 sodium_init()。

使用 Ubuntu 18.04、PHP 7.2.10

例子:

admin@server:~$ php -v
PHP Fatal error:  sodium_init() in Unknown on line 0
PHP 7.2.10-0ubuntu0.18.04.1 (cli) (built: Sep 13 2018 13:45:02) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.10-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies
Run Code Online (Sandbox Code Playgroud)

或作曲家:

admin@server:~$ php composer.phar
PHP Fatal error:  sodium_init() in Unknown on line 0
   ______
  / ____/___  ____ ___  ____  ____ …
Run Code Online (Sandbox Code Playgroud)

php php7 18.04

12
推荐指数
1
解决办法
4253
查看次数

如何在 Linux 服务器 16.4 中启用和禁用 php7 模块

我在/etc/php/7.0/mods-available. 我怎样才能启用它。我试过了php5enmod, and php7enmod。没有一个对我有用。

谢谢你。

16.04 php7

11
推荐指数
1
解决办法
4万
查看次数

当我添加 apt-repository ppa:ondrej/php 时,是否应该按照建议添加 apt-repository ppa:ondrej/apache2 ?

我正在将 Ubuntu 18.04 LTS 服务器升级到 PHP 7.4,因为不再支持 PHP 7.2。

\n

其他公共问题指示我添加sudo add-apt-repository ppa:ondrej/php,例如如何安全更新/升级 PHP 7.2 到最新版本?

\n

当我运行时add-apt-repository ppa:ondrej/php,会向我显示以下信息(出于此问题的目的引用相关部分):

\n
\n

注意事项:

\n
    \n
  1. 如果您使用的是 php-gearman,则需要添加 ppa:ondrej/pkg-gearman
  2. \n
  3. 如果您使用的是apache2,建议添加ppa:ondrej/apache2
  4. \n
  5. 如果使用nginx,建议添加 ppa:ondrej/nginx-mainline\n\xc2\xa0\xc2\xa0\xc2\xa0 或 ppa:ondrej/nginx
  6. \n
\n
\n

add-apt-repository ppa:ondrej/apache2如果我在这台服务器上运行 apache2,我也应该这样做吗?

\n

apt ppa apache2 php7 18.04

11
推荐指数
1
解决办法
9549
查看次数

PHP 警告:PHP 启动:无法加载动态库

我得到了错误

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/php_intl.dll' - /usr/lib/php/20151012/php_intl.dll: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/php_soap.dll' - /usr/lib/php/20151012/php_soap.dll: cannot open shared object file: No such file or directory in Unknown on line 0
Run Code Online (Sandbox Code Playgroud)

正如@Parto所说

我跑 php -i | grep ".ini"

并得到了结果:-

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/php_intl.dll' - /usr/lib/php/20151012/php_intl.dll: cannot open shared object file: …
Run Code Online (Sandbox Code Playgroud)

php apache2 16.04 php7

10
推荐指数
3
解决办法
10万
查看次数

如何安装 php 7 以在带有 nginx 的 ubuntu 上运行 php 5

我想尝试 php 7 并让我的网站在 php 7 上工作,同时让其他网站在 php 5 上工作以防万一。这样我就可以从域虚拟主机配置中决定要运行哪个 php。

我查看了 php 版本管理,发现可以运行两个版本,尽管我发现的版本似乎适用于 apache。我正在寻找有关如何在 nginx 下执行此操作的更明确说明。我也运行 hhvm 以防万一。

nginx php7

9
推荐指数
1
解决办法
2万
查看次数

标签 统计

php7 ×10

php ×6

16.04 ×3

apache2 ×3

18.04 ×2

ppa ×2

20.04 ×1

apt ×1

nginx ×1

upgrade ×1