更新至 v14.4 ubuntu 后,我收到“您应该替换此文件(位于 /var/www/html/index.html)”

更新至 v14.4 ubuntu 后,我收到“您应该替换此文件(位于 /var/www/html/index.html)”

好的,这是正在发生的事情。首先,我将 Ubuntu v12 上的 php 更新到 php v5.5(然后检查网站以确保它们仍然有效)然后将操作系统升级到 v14(可靠)

当出现提示时,只需对所有提示说“i”系统就会重新启动,然后输入“ls”以确保文件仍然在那里。

但是网页不会显示在浏览器中,而是显示“默认页面”,我试图将 apache 重定向到新的文件位置“位于 /var/www/html/index.html”,但我不认为我做得正确,就像我说的,我不擅长使用命令行

没有管理员,他被解雇了,不会回应

编辑1

好的,所以我猜我现在需要让 Apache 指向 html 文件(而不是现在的 apache 树的目录)

我需要输入什么才能实现这一点?如何让 apache 重定向到 apache2.conf.dpkg-old 文件或将内容复制到 apache2.conf 中?

编辑2

大问题....!!!!

现在网页已经瘫痪,显示“此网页不可用”

网页是我主要的收入来源,如果我不“解决”这个问题,我可能会丢掉工作,所以我需要一步一步地了解如何改变:

1.将文档根目录从 /var/www 移至 /var/www/htm

或者

  1. 将代码移至 /var/www/html

编辑3

好的,使用以下命令编辑文本文件:sudo nano /etc/apache2/sites-available/000-default.conf

我尝试“重启” apache,结果显示:* apache2 配置测试失败。配置测试的输出为:AH00526:/etc/apache2/apache2.conf 第 1 行语法错误:命令“bash:”无效,可能是拼写错误或由服务器配置中未包含的模块定义。操作“configtest”失败。Apache 错误日志可能有更多信息。这是什么意思?我该如何修复?

编辑4

让 Apache 再次运行

但是现在,当我尝试在 Web 浏览器中导航到主机页面时,我看到的是根表,我可以导航到 html/文件,但在 3 个网页上看到“404 未找到页面”,在另一个网页上看到“默认 apache ubuntu”页面。

1 我该如何修复? 2 修复的步骤是什么?

编辑5

设法弄清楚需要重新注册网站并提供新的证书才能上传它们(它们都是 joomla 网站)

可能是 php 没有按预期运行?如果是这样,我是否只需更新它(PHP 需要达到 5.6 版本,因为更高的版本不适用于网站托管的地方)

答案1

Apache 配置文件位于 中/etc/apache2。您可以使用以下cd命令更改到相应的目录:

cd /etc/apache2

有几种方法可以编辑配置文件。最容易学习的是nano。您可能还需要使用sudo来编辑 Apache 的配置。因此:

sudo nano apache2.conf

您需要更改 Apache 的DocumentRoot指令(或VirtualDocumentRoot)。它位于哪个文件中取决于您的特定配置。我建议先查看/etc/apache2/apache2.conf以及可能位于中的所有内容/etc/apache2/sites-enabled

如果您在 Apache 网站上搜索DocumentRoot,您会找到很多有用的文档。总体而言,Apache 的文档相当不错。

更改配置后,必须重新启动 Apache 才能使更改生效:

sudo service apache2 restart

编辑

我刚刚意识到一件重要的事情:由于您在升级时盲目地回答了每个问题而没有先弄清楚自己在做什么,因此您很可能破坏了 Apache 配置,除了这个问题之外,可能还有很多问题。(您可能还破坏了机器上其他软件的配置。)我建议您/etc/apache2从备份中获取并仔细比较两个版本以决定如何重建配置。如果您没有备份,那么您会玩得很开心!

Linux 和 Windows 之间的一个主要区别是:Windows 安装程序会询问许多无意义的问题,从而导致“下一个、下一个、下一个”现象。但 Linux 往往不会询问无意义的问题。因此,如果它询问问题,请谨慎回答,因为这些问题可能很重要。

编辑2

稍等一下。以 结尾的文件.dpkg-old是升级前的文件版本。它们应该包含正确的配置。您可以将它们与无后缀文件进行比较以发现正确的配置。

使用diff命令查看两个文件之间的差异。使用nano编辑文件,并cp复制文件(或备份以防出现问题)。mv将移动或重命名文件,并将rm永久删除文件而无需确认,也不会进入回收站。所以要小心。要了解如何使用命令,请使用man:例如,man diff

答案2

好的,这是从 Precise 升级时的一个众所周知的问题。文档根目录已从 /var/www 移至 /var/www/html,其他发行版已使用一段时间了,特别是 RHEL(及其衍生产品)和 Debian。

令人震惊的是,do-release-upgrade 无法自动处理这种情况。简单的解决方案是将其移回。如上所述,在配置文件中找到文档根目录行并将其改回 /var/www。

或者将您的代码移至 /var/www/html,这是相对路径可以很好地为人们服务的地方,因为绝对路径(对于 php 包含等)将需要更改代码。

我仍然运行 Ubuntu 服务器,但是由于这种原因,我更倾向于 CentOS。

编辑2.(一步一步)。

1) 在命令行上,在终端屏幕或窗口中,以 root 身份打开“nano”编辑器来更改指定文档根位置的配置文件。

sudo nano /etc/apache2/sites-available/000-default.conf

注意:这是一个文本编辑器。

2)在初始注释块之后找到以下行。

        ServerAdmin webmaster@localhost  
        DocumentRoot /var/www/html  

3)在“DocumentRoot”一词前面放置“#”,以便它将被忽略,并且使得后来的读者能够更加明显地看到这种变化。

        ServerAdmin webmaster@localhost  
        # DocumentRoot /var/www/html  

4) 添加新行,如下所示。注意 /var/www。

        ServerAdmin webmaster@localhost  
        # DocumentRoot /var/www/html  
        DocumentRoot /var/www  

提示:可以使用 Ctrl-K、Ctrl-U、Ctrl-U 剪切和复制线条。

5)重新启动。

答案3

  1. sudo 服务 apache2 重启

  2. 转到您的浏览器并使用 12.0.0.1/“写入您的项目文件夹的名称”

  3. 经过长时间的头脑风暴后,按下 Enter 键终于找到了解决办法。

相关内容