如何设置 .htaccess,以便侧 html 文件中的链接将从基目录中读取



现在,我已经把我的html文件放在public/views文件夹下,public/libs 下的库和 public/src 中的自定义文件

我正在使用DictoryIndex来设置默认主页。喜欢DirectoryIndex public/views/index.html

但是在index.html文件里面,我必须用<a href="public/views/product.html"></a>打开与index.html相同的目录下的文件,否则找不到该文件。然后 URL 看起来会很丑,就像site.com/public/views/product.html

.

我可以问一下,如何设置.htaccess文件以摆脱URL地址中的public/views

还有一个问题,当我编写代码以在 index.html 中导入库时,它似乎会从基本文件夹中读取(例如我放置.htaccess文件的位置(。但是在其他 html 文件中,它们将从自己的目录中读取,就像 public/view 中的 html 文件将开始从文件夹读取 views .有没有办法解决这个问题?

谢谢

您是否也需要通过HTTP访问库和自定义文件?如果没有,只需将文档根目录设置为 public/views

否则,public/views *.html您可以使用类似

Options +FollowSymLinks -Multiviews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-s
RewriteRule (.+.html)$ /public/views/$1 [L]    
无论如何,出于

显而易见的原因,在 DirectoryIndex 指令中使用完整路径而不仅仅是文件名不是一个好主意。

它还解决了您的第二个问题。目前,public/views/index.html被认为是/因此与此文件相关的任何内容都相对于/,而不是views文件夹。另一方面,任何其他文件仍被视为"自身",因此包含是相对于views文件夹的

最新更新