【发布时间】:2011-11-05 22:02:18
【问题描述】:
当人们访问我的域时,它会被重定向到 http://www.mydomain.com/en/index.php使用php代码。我在.htaccess中添加了以下代码
RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RedirectPermanent /pages/abc-123.html http://www.mydomain.com/en/page-a1/abc.php
将人们从非 www 重定向到 www,
用户仍然可以通过输入http://mydomain.com/en/page-a1/abc.php 和http://www.mydomain.com/en/page-a1/abc.php URL 来访问
有没有人知道在用户输入http://www.mydomain.com/en/page-a1/abc.php的情况下完全重定向到http://www.mydomain.com/en/page-a1/abc.php的方法,并且禁止访问没有www的URL。
【问题讨论】:
-
重写的想法是,如果用户访问非 www,则将其重定向到 www。所以非 www 仍然可以访问,但告诉浏览器重定向到 www 并将该 url 保存在缓存中,因为这是永久 (301) 重定向。所以,从用户的角度来看,当他访问
domain.com时,浏览器会自动重定向到www.domain.com。您的用户是否在浏览器的地址栏中看到domain.com? -
不,用户不会看到 domain.com,但他可以在浏览器中打开mydomain.com/en/page-a1/abc.php 页面。
-
你想做什么?禁止用户在浏览器中输入该 URL?:) 如果您想拒绝
domain.com服务,只需将其重定向到404页面,类似RewriteRule ^(.*)$ 404.php [L]
标签: php apache .htaccess redirect