【发布时间】:2013-02-07 04:57:26
【问题描述】:
我正在使用 2 个域,例如 http://doma.in 和 http://domain.com
缩短 URL 仅调用从我的脚本生成的 URL。来自缩短 URL 的所有其他调用都应转发到主域。这就是为什么我有这个小的 mod_rewrite 规则。
RewriteCond %{HTTP_HOST} ^doma.in [NC]
RewriteRule ^/?$ http://www.domain.com/$1 [R=301,L]
问题
我想禁止从缩短 URL 调用子文件夹。因为缩短 URL 也可以生成自定义 URL,如
http://www.nokia.com -> http://doma.in/nokia
如果我有一个名为 "nokia" 的子文件夹,它将不会被转发到目标。它不是转发而是调用子文件夹。
使用此规则通过 mod_rewrite 转发 URL。
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-x
RewriteRule ^(.*) /redirect.php?id=$1 [L]
【问题讨论】:
标签: mod-rewrite