在我更改我的 .htaccess 后,我的 Css An Js 不工作

After I Change my .htaccess my Css An Js not working

我的项目文件夹是这样的

  *myProject(d:wamp/www/mywebsites/myProject)
     @ ajax
     @ asset
        #all of php functions and database
     @ newsPicture
        #my post images
     @ profilePicture
        #user images
     @ public
       -js
       -css
       -img
       -.htaccess //file
       -index.php //file
       -User.php //file
       -Posts.php //file
     @ view
       -header.php  //include in index.php
       -footer.php  //include in index.php

所以我将 htaccess 设置为此

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

#Change /Posts.php?id=4 => /Posts/4
RewriteRule ^Posts/([A-Za-z0-9]*)$ Posts.php?id= [L]

#Change /User.php?id=4 => /User/4
RewriteRule ^User/([A-Za-z0-9]*)$ User.php?id= [L]

#Change /Sign.php => /Sign
RewriteRule ^([A-Za-z0-9]+)$ .php [L]

我的htmlheader是这样的(view/header.php)

  <link href="css/bootstrap.min.css" type="text/css" rel="stylesheet">
  <link href="css/bootstrap-theme.min.css" type="text/css" rel="stylesheet">
  <link href="css/Normalize.css" type="text/css" rel="stylesheet">
  <link href="css/Fixer.css" type="text/css" rel="stylesheet">

所以当我在我的 url 中传递参数时,比如 User/2 我所有的 css 和 js 都不工作!我应该为 header.php 中的 link 标签使用绝对链接吗?喜欢:

<link href="<?php echo dirname($_SERVER['PHP_SELF']);?>/css/Fixer.css" type="text/css" rel="stylesheet">

请帮我 tnx!

您必须通过在开头添加斜杠来更改路径。

当您访问www.yourdomain.com/path1/

服务器搜索文件在www.yourdomain.com/path1/css/bootstrap.min.css

<link href="/css/bootstrap.min.css" type="text/css" rel="stylesheet">
<link href="/css/bootstrap-theme.min.css" type="text/css" rel="stylesheet">
<link href="/css/Normalize.css" type="text/css" rel="stylesheet">
<link href="/css/Fixer.css" type="text/css" rel="stylesheet">