【问题标题】:seo friendly url using .htaccess css file is not loaded [duplicate]未加载使用 .htaccess css 文件的 seo 友好 url [重复]
【发布时间】:2018-08-30 23:57:21
【问题描述】:

我有一个看起来像这样的网址

https://sparkle.000webhostapp.com/movie.php?id=16

我想改成

https://sparkle.000webhostapp.com/movie/16

我已将 .htaccess 文件创建为

   Options -MultiViews
RewriteEngine On

# redirect "/movie.php?id=xxx" to "/movie/xxx"
RewriteCond %{THE_REQUEST} \s/movie\.php\?id=([0-9]+)\s [NC]
RewriteRule ^ /movie/%1? [R=301,L]

# internally rewrite "/movie/xxx" to "/movie.php?id=xxx"
RewriteRule ^movie/([0-9]+)$ /movie.php?id=$1 [L]

但问题是样式文件,即没有加载css文件。 链接中没有定义样式

【问题讨论】:

  • 你的<link rel ... 元素是什么样的?
  • 如果我不使用 .htaccess 文件。一切都好!但使用 .htaccess 文件链接后转换但未加载 css 文件。

标签: php .htaccess url seo


【解决方案1】:

如果你的 CSS 被这样引用:<link rel="stylesheet" href="homepage.css" />,它将是相对于请求的路径!

最初,对/movie.php?id=123 的请求将呈现一个页面,其css 被假定为/homepage.css

但是,当您创建该重写时,请求被理解为/movie/123,并且css 被假定为/movie/homepage.css

要解决此问题,请以 / 开头对 CSS 的引用,以便它始终引用 Web 根目录。

更新后的<link> 标签应该是<link rel="stylesheet" href="/homepage.css" />

您可以通过检查浏览器的错误控制台并查找类似“GET https://sparkle.000webhostapp.com/movie/homepage.css 404”的内容来确认这一点

【讨论】:

  • 是的!这现在有效。谢谢。
  • 还有一件事。更改网址将有助于谷歌索引??
  • 我想是的! moz.com/learn/seo/url
猜你喜欢
  • 1970-01-01
  • 2021-07-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-29
  • 2013-01-22
  • 2021-07-06
  • 2018-04-28
相关资源
最近更新 更多