gpt4 book ai didi

php - htaccess 漂亮的 URL 在 PHP MVC 中不显示任何 css 或图像

转载 作者:行者123 更新时间:2023-11-28 06:37:48 26 4
gpt4 key购买 nike

第一次使用 htaccess 创建一个漂亮的 url 元素以及一个简单的 PHP 元素结构。我得到了关于 OK-ish 的漂亮 url,目前我唯一的问题是我的 CSS/media/... 没有加载到页面上。

这是我使用的 htaccess 代码:

RewriteEngine on

# localhost
RewriteBase /project/

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?p=$1
RewriteRule ^(.*)/(.*)$ index.php?p=$1&id=$2

# fix trailing slash
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ $1 [R=301,L]

所有内容都需要路由到 index.php 文件,我的一般模式如下所示:

.com/desktops
.com/laptops
.com/desktop/Intel-Core-i5-Gaming
.com/laptop/Intel-Core-i5-Gaming

我希望你们中的任何人能教我一些这方面的智慧! :)

最佳答案

这应该有效。

RewriteCond ${REQUEST_URI} ^.+$
RewriteCond %{REQUEST_FILENAME} \.(gif|jpe?g|png|js|css|swf|php|ico|txt|pdf|xml)$ [OR]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -l
RewriteRule ^ - [L]

或者有 3 种不同的方法可以解决这个问题:

为图像、css 和 js 文件使用绝对路径,即以/或 http://开头您的路径

另一种是在 HTML head 部分使用 base href 标签,如下所示:

<base href="http://www.example.com/">

第三个选项是通过 mod_rewrite

将这些行放在 .htaccess 文件中的其他 RewriteLine 之上:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{DOCUMENT_ROOT}/$1 -f
RewriteRule ^[^/]+/([^.]+\.(?:js|css|jpe?g|png|gif))$ /$1 [L,R=301,NC]

关于php - htaccess 漂亮的 URL 在 PHP MVC 中不显示任何 css 或图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34529142/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com