这是我在public_html中的.htaccess文件:
# Do not remove this line, otherwise mod_rewrite rules will stop working
RewriteBase /
DirectoryIndex /index.html
Redirect /index.html http://mysite.com/home.html
RewriteEngine On
RewriteCond %{REQUEST_URI} !\.(?:jpeg|jpg|ico|svg|eot|woff|ttf|gif|bmp|png|tiff|css|js)$ [NC]
RewriteRule !^page/ page%{REQUEST_URI} [L,NC]
如您所见,我将网站设置为从.html
加载/page/
个文件。不幸的是,这种方法似乎让我遇到了麻烦。首先,favicon不会加载(是的,它位于正确的地方,具有适当的href
)。我甚至将|ico|
添加到.htaccess
中的该行代码中。有关为什么jpgs等没有问题加载但.ico失败的任何想法?
其次,我的网站使用@fontface,我有点担心.svg .eot .woff
和.ttf
字体文件也可能由于.htaccess
欺骗而失败。我将这些文件扩展名添加到.htaccess
中的代码行,但无法在可能需要不同字体格式的各种计算机上进行测试。
答案 0 :(得分:2)
尝试更改条件以仅启动页面规则
RewriteEngine On
RewriteCond %{REQUEST_URI} \.(php|html?)$ [NC]
RewriteRule !^page/ page%{REQUEST_URI} [L,NC]
这更容易,因为您不必担心可能会错误地重定向到您的规则的所有不同文件类型。要回答破坏现有规则的内容,您必须共享站点的目录结构和文件的位置。