【发布时间】:2013-02-19 21:37:37
【问题描述】:
我正在尝试使用 htaccess 和 mod_rewrite 将一个域及其两个子文件夹与另一个域屏蔽。例如:http://example.com/sub/sub-sub/ 到http://example-2.com/ 这样http://example-2.com/ 是浏览器地址栏中显示的内容,而http://example.com/sub/sub-sub/ 的内容是页面上显示的内容。
我发现 this question/answer 应该可以完成此操作,但在我实施时它不起作用。
当前htaccess:
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/(.+) [NC]
RewriteRule .* http://example.com/sub/sub-sub/%1 [L]
Options -Multiviews
这是我的目录的视图:
【问题讨论】:
-
好的,但是两个 URL 中哪些字符串是固定的,哪些是动态的。这就是这类问题的相关信息。其余的似乎很清楚:您想将
http://example-2.com/静默映射到http://example.com/sub/sub-sub/,但example-2.com和sub/sub-sub之间的相关性是什么,例如,传入URL 中的什么应该传递给替换URL,或者什么都没通过? -
在 URL
http://example.com/sub/sub-sub/中,子文件夹之后的任何内容都应传递给替换 URL。例如,如果我有http://example.com/sub/sub-sub/a-page.php,那么替换 URL 应该显示http://example-2.com/a-page.php。希望这是有道理的。
标签: .htaccess mod-rewrite