0

我正在尝试让 apache RewriteRule 获取 url 并返回 url + .html

例如:“www.domain.com/about”应该服务于页面“www.domain.com/about.html”

我已经尝试过 SO 的许多解决方案,但我相信由于站点布局会出现一些复杂情况。

我在 Network Solutions 上托管,所以它是共享托管,这是一个开发站点,所以我目前将 dev.domain.com 指向 /htdocs/dev

目录结构

-htdocs
--(contains existing sites files)
--.htaccess

----dev
------(contains dev site files)
------.htaccess

所以你可以看到有一个现有的 .htaccess 文件可能在做某事并且可能存在子域问题,我不完全确定,这是我第一次使用 Apache。

这是我现有的 .htaccess,它位于 /htdocs/dev 文件夹中

RewriteEngine On
RewriteBase /dev
RewriteCond %{REQUEST_URI}.html -f [NC]
RewriteRule ^ %{REQUEST_URI}.html [L]

谢谢您的帮助!

4

1 回答 1

0

您正在指示 Apache 进行文件检查 ( -f),但它不知道在哪里查找。只是改变

RewriteCond %{REQUEST_URI}.html -f [NC]

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI}.html -f [NC]

这样,Apache 就有了来自文件系统根目录的完全限定路径。

于 2013-01-18T00:23:13.297 回答