为什么网站图标不显示?

Why is favicon not showing?

我有一个很奇怪的问题。我有两个 php 文件,我在其中使用 html 并且在同一个文件夹中,但是其中一个显示了图标,而另一个没有。我查了一下代码,两个文件的代码几乎一样

此代码有效:

<head>
        <meta charset="utf-8">
        <title>Home</title>
                <link href="../css/topbar2.css" rel="stylesheet" type="text/css">
                <link href="../css/home2.css" rel="stylesheet" type="text/css">
        <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.1/css/all.css">
                <link rel="icon" type="image/jpg" href="../img/favicon.jpg">
    </head>

在这行不通:

<head>
        <meta charset="utf-8">
        <title>Edit Accounts</title>
        <link href="../css/topbar2.css" rel="stylesheet" type="text/css">
        <link href="../css/updateAccount.css" rel="stylesheet" type="text/css">
        <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.1/css/all.css">
        <link rel="icon" type="image/jpg" href="../img/favicon.jpg">
    </head>

编辑: 我想我知道为什么会这样。在我的 HTML 代码之前,我有一些 php 代码,即:

<?php
require_once '../config.php';
require_once '../constants/sessionVariables.php';
require_once '../db/dbConnection.php';
// Se comprueba que el usuario ha iniciado sesión. Si no es así,
// se le redirige a index.php
if (!isset($_SESSION['email'])) {
    header("Location: ../index.php");
    exit();
}

$loginURL = $gClient->createAuthUrl();

if (isset($_POST['submit'])) {
    $q = $con->real_escape_string($_POST['q']);
    $f = $con->real_escape_string($_POST['f']);
    $s = $_POST['submit'];
}
?>

我得出的结论是错误来自 dbConnection.php 文件,但我不知道为什么。这是 dbConenction.php 代码:

<?php
session_start();

$DATABASE_HOST = 'localhost';
$DATABASE_USER = 'root';
$DATABASE_PASS = '';
$DATABASE_NAME = 'configurator';

$con = mysqli_connect($DATABASE_HOST, $DATABASE_USER, $DATABASE_PASS, 
        $DATABASE_NAME);
if ( mysqli_connect_errno() ) {
    die ('Failed to connect to MySQL: ' . mysqli_connect_error());
}


ini_set('display_errors', 1);
ini_set('log_errors', 1);
error_reporting(E_ALL);
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

首先,您的图标应该在您的根文件夹中。 其次,您是否尝试过清除浏览器缓存或使用 CTRL + F5 重新加载页面?

最后,错误是在 dbConenction.php 文件中,当它启动连接时,因为它之前已经被另一个文件启动了。因此,我为解决该问题所做的工作是在会话开始指令之前放置 if 子句:

if (session_status() == PHP_SESSION_NONE) {
session_start();
}