我做了以下工作:
sudo add-apt-repository ppa:ondrej/php5-5.6
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install php5
sudo apt-get install libapache2-mod-php5.6
sudo add-apt-repository ppa:ondrej/apache2
Run Code Online (Sandbox Code Playgroud)
当我尝试使用以下命令禁用旧版本的 php5 时:
sudo phpdismod php5
Run Code Online (Sandbox Code Playgroud)
我收到错误消息:警告:/etc/php/5.6/mods-available 下不存在模块 php5 ini 文件
即使我将 ini 文件移动到这个目录下,它也会给我同样的错误。我不知道我错过了什么??
一般来说,有人可以向我解释如何让我的实例使用新安装的版本,因为我的实例上似乎仍然有两个 php 目录树。php5/.. 和 php/5.6
oer*_*dnj 16
您正在以不兼容的方式混合不同的 PPA、版本和命令,让我们分解一下:
libapache2-mod-php5.6
存在于ppa:ondrej/php
,这确实是您要使用的 PPA
phpdismod
是禁用PHP扩展,而不是管理的Apache2模块的命令,你需要a2dismod
为
PHP Apache2 模块中ppa:ondrej/php5-5.6
的命名为libapache2-mod-php5
所以正确的应该是:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get purge php5-common # remove and purge old PHP 5.x packages
sudo apt-get install libapache2-mod-php5.6
Run Code Online (Sandbox Code Playgroud)
如果不先卸载php5-*
软件包,则需要禁用php5
模块并启用php5.6
模块:
sudo a2dismod php5
sudo a2enmod php5.6
Run Code Online (Sandbox Code Playgroud)
并可选择添加 Apache2 存储库:
sudo add-apt-repository ppa:ondrej/apache2
sudo apt-get update
sudo apt-get dist-upgrade
Run Code Online (Sandbox Code Playgroud)
有一个可用于 PPA 包的迁移指南。
归档时间: |
|
查看次数: |
33553 次 |
最近记录: |