我的问题是关于URL和Web。有时我看到的网址是这样的:www.myweb.com/user.php?name=mark,我知道这样你就可以从数据库中获取数据,其中的名字是标记,并显示在网站上。
但另一种方式是这样看:www.myweb.com/user/mark
在我看来,它的文件名为Mark在用户文件夹中,然后不知怎的从数据库中显示出所有关于mark的信息,但是到底发生了什么呢?是如何做到的呢?这与XML有关吗?什么时候这样用?为什么要这么用?
我甚至不知道在谷歌搜索什么,所以任何链接都是有帮助的。
谢谢
发布于 2013-11-26 00:09:43
这是web服务器可以执行的一种称为url重写的通用技术。
Wordpress这样做,并翻译成
http://example.com/2013/04/27/foo变成某种东西
http://example.com/index.php?url=2013/04/27/foo您可以在维基百科上泛泛而谈。
发布于 2013-11-26 00:12:22
user和mark不是“文件夹”,而只是URL的一部分。
一些web服务器遵循一种惯例,在文件夹/user/mark (相对于某个根文件夹)中查找并从那里提供文档。
然而,web平台以不同的方式解释URL变得越来越普遍。准确的解释取决于特定的web平台。
这样的web平台只需使用平台定义的约定将部分URL映射到服务器资源。
在ASP.Net (我最熟悉的平台)中,这种映射称为路由。
ASP.NET路由使您可以使用不必映射到网站中特定文件的URL。因为URL不必映射到文件,所以您可以使用描述用户操作的URL,因此更容易被用户理解。
发布于 2013-11-26 00:10:49
如果说到普通的Apache服务器,那么webserver有一个名为.htaccess的文件,或者另一个httpd.conf,它可以使用Apache内置的mod_rewrite模块来重写URL。可以使用RewriteCond和RewriteRule指令在这些文件中指定确切的方法。新的URI只是旧URI的别名。(对于给定的路由,不必有实际的文件夹)
https://stackoverflow.com/questions/20206098
复制相似问题