首页 > 解决方案 > 脚本不适用于 url 重写(我尝试了非相对链接)

问题描述

我知道关于这个主题有 5 个问题,我已经通过所有这些问题,但找不到任何答案。我今天刚开始重写 URL,所以我很新(而且不擅长),这就是我所拥有的

根文件夹

index.php
.htaccess
-scripts
     script.js
     jquery.js
-styles
     style.css

.htaccess 文件夹

 (url= index.php?catID=1  URLREWRITE = index/1)

 RewriteEngine on
 RewriteRule ^/?index/([0-9]+)$ index.php?catID=$1

索引.php

 <script src="/scripts/jquery.js"></script>
 <script src="/scripts/script.js"></script>
 <link rel="stylesheet" type="text/css" href="/styles/style.css">

错误

 GET http://localhost/scripts/jquery.js net::ERR_ABORTED 404 (Not Found) 
 //This one multiple times for every script/css i have

如您所见,它试图在脚本之前添加 / 但这并没有改变任何东西。我真的不需要一个聪明的答案,我唯一需要的是替换 url,就像你在 .htaccess 文件夹中看到的那样。

非常感谢

标签: php.htaccessurl-rewriting

解决方案


感谢@MrWhite,我找到了解决方案。

我将此添加到脚本中

<script src="//localhost/websites/nicms/scripts/jquery.js"></script>

这是我的网站文件夹的整个 URL。就像@MrWhite 说的那样,它前面没有 //localhost 也可以工作。

像这样

  <script src="/websites/nicms/scripts/jquery.js"></script>

对于任何阅读(和我自己)的人来说,一旦网站上线,路径将不再是 localhost,而是域名。

我通过在 php 中创建 1 个变量来解决这个问题,这样我以后可以轻松更改它

PHP

<?php 
   $url = "//localhost/websites/nicms/";
?>
<script src="<?php echo $url; ?>scripts/jquery.js"></script>

推荐阅读