【问题标题】:PHP url rewriting CSS not working [duplicate]PHP url重写CSS不起作用[重复]
【发布时间】:2017-09-21 02:21:04
【问题描述】:

我正在开发一个 PHP 应用程序,它会生成以下链接

http://localhost/24_2_april/video-library/2/Programming-Language

但是自从我使用 htaccess 使我的 URL 变得干净之后,CSS 和 JS 就无法正常工作了。现在我知道我可以给出 cSS 的绝对路径,但我认为这不是正确的方法,我也尝试使用 RewriteCond %{REQUEST_FILENAME} !-f,但到目前为止还没有运气......

到目前为止,这是我的 htaccess 代码。

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^video-library/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/?$ var/www/html/24_2_april/video.php?cat_id=$1&category=$2 [L]
RewriteRule ^video-library/([A-Za-z0-9-]+)/?$ var/www/html/24_2_april/search_results.php?cat_id=$1 [L]

【问题讨论】:

  • 你的 CSS 和 JS 文件的路径是什么?
  • 它只在我的项目文件夹中。

标签: php .htaccess url web url-rewriting


【解决方案1】:

试试这个

Options +FollowSymLinks
RewriteEngine On

RewriteRule ^video-library/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/?$ http://localhost/24_2_april/video.php?cat_id=$1&category=$2 [L]
RewriteRule ^video-library/([A-Za-z0-9-]+)/?$ http://localhost/24_2_april/search_results.php?cat_id=$1 [L]

【讨论】:

  • 对不起,兄弟,但没有成功。页面只是在没有 CSS 和 JS 的情况下加载。
  • 现在 CSS 可以工作了,但是重写没有正确完成。
  • 更新 htaccess 到 RewriteBase /24_2_april/ 然后从规则中删除完整的 URL。例如 /search_result.php、/video.php
  • 试过了。它给了一个Internal Server Error
【解决方案2】:

在我看来,要走的路是使用 RewriteCond。只有在没有可用的实际文件时才会执行这些重写规则。如果您的文件是符号链接,您可能需要添加 RewriteCond %{REQUEST_FILENAME}% !-l

Options +FollowSymLinks
RewriteEngine On

RewriteCond %{REQUEST_FILENAME}% !-f
RewriteCond %{REQUEST_FILENAME}% !-d
RewriteRule ^video-library/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/?$ var/www/html/24_2_april/video.php?cat_id=$1&category=$2 [L]

RewriteCond %{REQUEST_FILENAME}% !-f
RewriteCond %{REQUEST_FILENAME}% !-d
RewriteRule ^video-library/([A-Za-z0-9-]+)/?$ var/www/html/24_2_april/search_results.php?cat_id=$1 [L]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-06
    • 2015-09-16
    • 1970-01-01
    • 2016-12-18
    • 2023-03-24
    • 1970-01-01
    相关资源
    最近更新 更多