在 7.0 ubuntu 16.04 旁边安装 php 5.6 后,本地虚拟主机停止工作
Posted
技术标签:
【中文标题】在 7.0 ubuntu 16.04 旁边安装 php 5.6 后,本地虚拟主机停止工作【英文标题】:Local virtual hosts stopped working after installing php 5.6 next to 7.0 ubuntu 16.04 【发布时间】:2018-11-21 20:46:18 【问题描述】:在 php 7.0 旁边安装 php 5.6 后,我最近遇到了本地虚拟主机问题。我正在使用 Ubuntu 16.04 和为 Laravel 项目配置的 Apache、mysql 等,在我不得不使用另一个项目之前,一切都在 php 7.0 上运行良好。这个非 laravel 项目需要 php 5.6 才能工作,所以我将它安装在 php 7.0 旁边以及一些用于 phpmyadmin 的模块(因为在我将服务器切换到 php 5.6 后它不起作用)。所以我在安装 php 5.6 后所做的是:
sudo a2dismod php7.0 须藤 a2enmod php5.6 sudo service apache2 重启
在 /etc/hosts 中为我的 php 5.6 项目添加了一个新主机,地址为 127.0.0.1 www.myhost.local。
在站点可用中添加了一个新配置,启用它,重新启动服务器。
安装了几个 phpmyadmin 模块需要为新项目配置数据库。
使用我的 php 5.6 项目。
当我想切换回我制作的 Laravel 项目时:
sudo a2dismod php5.6 须藤 a2enmod php7.0 sudo service apache2 重启
而且所有 laravel 主机都没有工作。我从谷歌浏览器收到的错误是:无法访问此站点 找不到 www.myhost.local 的服务器 IP 地址。 ERR_NAME_NOT_RESOLVED
而且我没有更改 Laravel 项目的配置!除了在我的 php 5.6 项目中添加该行之外,我没有编辑站点可用配置,也没有编辑 etc/hotst。我试过了:
-
检查 /etc/apache2/mods-enabled 哪里启用了 php7.0.load 和 php7.0.conf。
检查服务 apache2 状态并让 Apache 处于活动状态(正在运行)。
检查http://localhost/并获得默认的apache页面。
检查 http://localhost/php.info 显示服务器正在使用 php 7.0 运行
从 etc/hosts 中删除 php 5.6 主机并在可用站点中禁用相同的配置。
在我的 Laravel 主机配置的开头添加 而不是 。如果在没有 www 的情况下加载一些内页并且主页仍然没有并且每次我尝试加载它时都会将 www 添加到 url 中,这使得一些内页可以工作。然而,一些内页后来也开始生成 www 并且没有任何帮助:(
检查 apache 日志并仅收到警告。
其他一些小事我现在不记得了...
有人可以帮忙吗?还是完全重装php更容易?
【问题讨论】:
访问日志中没有写入任何内容吗?然后无法访问服务器本身 - 您确定您使用的地址已正确解析吗? @NicoHaase 当我周五检查 apache error.log 时,我收到了类似 [mpm_prefork:notice] [pid 32397] AH00169: 捕捉到 SIGTERM、正在关闭……以及其他一些带有 SIGTERM 的警告。现在完全是一团糟,因为我还收到有关 laravel 项目 /storage 文件夹的权限警告。这是可以理解的,但是a)。为什么这些权限会改变 b)。日志 c) 中只提到了一个项目。不知何故,当我现在尝试打开 localhost/php.info 时,我得到了这个带有 404 错误的完全 laravel 项目页面。该项目的主机是 /etc/hosts 列表中 127.0.0.1 和 127.0.1.1 之后的第一个主机。 您的网站在哪个版本的 Laravel 中运行?任何大于或等于 5.5 的版本都需要 > PHP 7 @Rooneyl 我正在使用 Laravel 5.5.32。我真的在考虑重新安装 php,但我非常害怕在现有版本旁边安装较新的 php 版本。因为我所有的 laravel 站点都运行良好,直到我安装了 php 5.6 并配置了新的非 laravel 项目:( 【参考方案1】:谢谢大家!那是浏览器缓存(尽管我检查了其他浏览器,但我从未打开过我的项目)。所以它终于在隐身窗口中工作了,在我清除了 Chrome 和 FF 的缓存之后。
【讨论】:
以上是关于在 7.0 ubuntu 16.04 旁边安装 php 5.6 后,本地虚拟主机停止工作的主要内容,如果未能解决你的问题,请参考以下文章
为VMware虚拟机内安装的Ubuntu 16.04设置静态IP地址
为VMware虚拟机内安装的Ubuntu 16.04设置静态IP地址