在 ftp 中上传新的更改后,网站不会更新

  • 本文关键字:网站 更新 ftp php html
  • 更新时间 :
  • 英文 :


我的网站按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 中添加此行来禁用 opcache.ini:

opcache.enabled OFF

opcache.enabled=0

但是<?php phpinfo(); ?>告诉我它仍然已启用...是我的主机控制吗?操作缓存是否会导致此问题?

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

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

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

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

请记住,您使用的是指向 CSS 文件的根相对链接/assets/css/main.css。也就是说,您的CSS应该在一个名为css的文件夹中,在根级别名为assets的文件夹中。您可以通过调出 F12 开发人员工具并检查Sources选项卡来确认此 CSS 文件是否确实已加载。

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

希望这有帮助!

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

最新更新