2010-05-21 117 views
0

是否可以将网址隐藏在网络浏览器的地址栏中,以便它不一定与文件的位置相匹配。 例如,这个网址:如何隐藏网址在php

http://localhost/exp/regstuds.php 

你将永远看在哪里可以找到在电脑中的文件知道。 是否有可能扭曲或disarrange或隐藏的网址,以便文件的位置将不会透露

回答

2

如果您在Apache服务器上托管您的php,您可能有能力使用mod_rewrite实用程序。你可以这样做可以将规则添加到您的.htaccess文件...

RewriteEngine on 
RewriteRule ^RegStuds/ regstuds.php 

这将导致http://localhost/RegStuds/实际呈现regstuds.php,但没有在地址栏中显示过它。

如果您在IIS上,则可以使用ISAPI重写筛选器执行相同的功能。

如果您没有mod_rewrite或ISAPI重写过滤器,您可以使用文件夹结构获得类似的结果,因此您将拥有一个RegStuds/index.php物理路径 - 并且您永远不需要链接到“index.php”,因为它是默认文件。这是最不推荐的方式。

3

是的,如果您使用的是Apache看看mod_rewrite。几乎所有其他Web服务器也有类似的重写模块。

我希望你做这件事的唯一动机不是“通过默默无闻的安全”。因为如果是这样,你应该停下来花更多时间在更有效的事情上。

+0

你有没有关于这个话题 – user225269 2010-05-21 08:18:57

+0

Apache的文档是我们的最佳指南初学者有任何指导,有很多其他的例子。我找到了一个我发现非常有用的链接,它是关于htaccess文件的,但包含许多有用的rewite规则和条件,并且您可以轻松将这些指令移至apache vhost配置:http://www.evolt.org/ultimate_htaccess_examples – Benoit 2010-05-21 08:32:50

0

没有它没有。

每个功能位必须具有唯一标识符(URI),以便将请求路由到正确的代码位。映射可以使用各种技巧非线性 - mod_rewrite,前端控制器,内容协商......但这只是模糊了真正发生的事情。

通过使用前端控制器架构和每个请求使用表单/ POST的方式,您都可以在浏览器的地址栏中找到出现的内容,但这很快就会变得非常混乱。

也许如果你想解释为什么你想这样做,我们可能会想出一个更好的解决方案。

C.