我正在尝试这样做......
将mysite.com/directory/重定向到mysite.com/directory/do
但是只有在打开“/ directory /”时才指向文件。我知道“DirectoryIndex”可以帮助解决这个问题,但我希望文件的名称(即“do”)出现在用户看到的url中。有没有办法用.htaccess来实现这个目的..?
提前致谢!
答案 0 :(得分:1)
如果我理解正确,你需要这样的东西:
RewriteEngine On
# Only redirect if we're in /directory/ and *not* pointing at
# a file that already exists in the filesystem
RewriteCond %{REQUEST_URI} ^/directory/
RewriteCond %{REQUEST_URI} !-f
RewriteRule . /directory/do [R,L]
或者,如果您的意思是“当用户访问网址mysite.com/directory/ fullstop”时,您可能会认为这也是有效的:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/directory/$
RewriteRule . /directory/do [R,L]
编辑:如果/ do不是实际文件:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/directory/
RewriteCond %{REQUEST_URI} !^/directory/do$
RewriteCond %{REQUEST_URI} !-f
RewriteRule . /directory/do [R,L]
答案 1 :(得分:-1)
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/redeem/surveys/$ [NC]
RewriteCond %{REQUEST_URI} !-f
RewriteRule ^(.*)$ /redeem/surveys/do$1 [L,R=301]
这有效......但它会更好......?