阻止从实际URL访问文件并使用重写.htaccess

时间:2012-06-04 11:19:53

标签: .htaccess codeigniter mod-rewrite redirect http-redirect

我有一个htaccess的情况。我对htaccess很新。 所以,我正在使用codeigniter。现在我想做一个重定向。

codeigniter的原始网址是:

www.mysite.com/index.php/admin/getz

现在,我想让用户输入www.mysite.com/agetz来访问上面的网址。到目前为止相当好。它通过以下方式实现:

RewriteRule ^agetz$ /index.php/admin/getz [L]

现在,我想做的是,当人们输入真正的网址,即www.mysite.com/index.php/admin/getz时,我想将它们重定向到404页面(出于某些安全原因保护其他人的网址) ),当他们输入www.mysite.com/agetz时,我想允许他们访问getz控制器。

问题是,目前如果我有任何技巧可以踢任何人打网址www.mysite.com/index.php/admin/agetz到404,它也会踢mysite.com/getz。必须使用.htaccess。

1 个答案:

答案 0 :(得分:1)

用以下内容替换现有代码:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+index\.php/admin/getz/?[\s\?] [NC]
RewriteRule ^ - [R=404,L]

RewriteRule ^agetz/?$ /index.php/admin/getz [L,NC]