【问题标题】:Website is not updating after uploading new changes in ftp在 ftp 中上传新更改后网站未更新
【发布时间】:2018-01-29 22:25:38
【问题描述】:

CTRL + F5后我的网站没有加载最新的更改

我通过将它添加到我的标题中让 CSS 加载了最新的更改:

<link rel="stylesheet" href="/assets/css/main.css?v=<?php echo time(); ?>" />

但是如何让我的网站本身加载最新的更改?例如:

发件人:

<h1>Hello</h1>

收件人:

<h1>Helloblabla</h1>

当我刷新时,它不会加载最新的更改。仅在约 2-5 分钟后

我进行了很多搜索,并尝试在我的 Chrome 中删除我的缓存 - 没有奏效。我尝试通过在根文件夹的 .users.ini 中添加这一行来禁用 opcache:

opcache.enabled OFF

opcache.enabled=0

但是&lt;?php phpinfo(); ?&gt; 告诉我它仍然处于启用状态...是我的主机控制它吗? opcache 是否会导致此问题?

【问题讨论】:

    标签: php html


    【解决方案1】:

    &lt;h1&gt;Hello&lt;/h1&gt; 更改为&lt;h1&gt;Hellobla&lt;/h1&gt; 纯粹是HTML;与 CSS 或其缓存无关。另外,需要注意的是 HTML 和 CSS 实际上有不同的缓存。

    要更新任何 HTML,您实际上需要将文件重新上传回服务器。假设您在 IDE 中,这可以通过右键单击相关文件来完成。如果您使用 cPanel 或类似工具,直接编辑文件将立即反映更改。

    您也可能缓存了旧内容。您可以通过将额外的/ 附加到 URL 来检查这一点,该 URL 被视为单独的页面(尽管它显示相同的内容)。如果你看到新内容,那么你确实已经缓存了旧内容。

    您可以使用 CLTRL + F5 刷新 HTML 缓存,尽管 CSS 缓存需要稍微不同的快捷方式 - CTRL + SHIFT + R。这相当于按住 SHIFT 并单击刷新图标。

    请记住,您使用的是指向 CSS 文件的 root-relative 链接:/assets/css/main.css。也就是说,您的 CSS 应位于名为 css 的文件夹中,位于根级别名为 assets 的文件夹中。您可以通过调出 F12 开发人员工具并检查 Sources 选项卡来确认此 CSS 文件实际上正在加载。

    此外,将href 设置为"/assets/css/main.css?v=&lt;?php echo time(); ?&gt;" 将在您加载该标头时每次 强制更新CSS。这非常适合测试,但可能不适合生产。对于生产,您可能只想附加一个版本号,这样只有对 CSS 文件的重大更改才会导致重新加载。

    希望这会有所帮助!

    【讨论】:

      【解决方案2】:

      PHP 可能未配置为从 .users.ini 文件读取配置。您可以在 phpinfo() 输出中找到 php.ini 和其他配置文件的位置。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-03-25
        • 1970-01-01
        • 2021-10-14
        • 1970-01-01
        相关资源
        最近更新 更多