2012-04-19 55 views

回答

1

有些人发现拥有一个单独的index.php文件(其中包括连接数据库,页面的基本布局(导航,页脚等)等)时更容易,里面的实际文件(在这里是/en/contacts.html)。

就我个人而言,我认为这是一个坏主意,因为有这么多更好的方法来做到这一点。其中之一是php.ini中的auto_prepend_fileauto_append_file选项。

1

不可能说清楚,但我敢打赌“en/contacts.html”是index.php文件的路径(超级不好的做法)。不要使用这种URL的语法,因为它们不是用户,也不是搜索引擎友好的。

+0

他们的搜索引擎友好的,但除非你保护他们,可以让用户负载量ngs喜欢:'http://www.website.com/index.php/en/../../../ etc/passwd'或其他东西.... – tkone 2012-04-19 01:31:10

+0

@tkone Google喜欢用户可读的URL,索引.php/en/contacts.html绝对不是最好的选择。 – zatatatata 2012-04-19 01:32:13

+0

Google不知道该网址是什么 - 只要路由是通过javascript(la twitter的hash-bang URL场景)完成的,Google就可以索引任何网址并返回正确的网页。这比'http:// www.website.com/story/0,0,111,103,234.html'感谢得多''thankyouverymuchvinettestoryserver – tkone 2012-04-19 01:35:42

1

这很可能是使用包含某些路由机制的框架。 index.php接受/en/contacts.html作为参数,根据预先确定的规则检索适当的文件并处理它们。

在大多数情况下的重写规则中的Apache或Nginx的(或正在使用的任何Web服务器)被用于这样的URL可以是以下形式:

http://www.website.com/en/contacts.html 

然后一切根以下被解释为一个参数在index.php中。

1

在PHP(我相信其他的服务器端语言),你可以参考超全局$_SERVER['path_info']在这种情况下的价值得到index.php之后的路径是

/en/contacts.html

,那么你就可以处理在应用程序路径,但是你认为合适的(例如在MVC,/users/list,你会初始化users控制器,并在其上运行list行动)

相关问题