我只是在网上冲浪,我注意到一些网址是这样的“samplesite.com/myname”,“/myname”是一种目录吗?这是否意味着当有人在 facebook.com 中成功注册时,他们也会在他们的服务器(facebook.com)中创建目录?然后我的最后一个问题是,当我使用一些网站,如发布文章网站时,我成功保存或创建文章后,url变成了这样,article.com/my-title-article.html,这是否意味着当我成功保存我的文章,还有一些代码可以让用户创建自己的 html 文件?谢谢你,对不起我的英语不好
6 回答
“花式网址”是使用重写引擎制作的。一个例子是apache的重写引擎。有关这方面的更多信息,请参阅mod_rewrite 。它在内部将url(例如samplesite.com/myname
)重写为它可以执行的文件(例如samplesite.com/person.php?name=myname
)。相同的重写引擎可用于将丑陋的 url(如最后一个)重写为花哨的 url。
当您访问时http://samplesite.com/myname
,您的浏览器只会发送一个 GET 请求samplesite.com
并请求位于 的资源/myname
。从那里开始,完全取决于网络服务器来确定该“资源”到底是什么。
Apache、Nginx、Lighttpd 等 Web 服务器可以配置为按照您描述的方式提供静态文件(即/myname
视为路径),但 Web 服务器也可以是位于服务器上运行的 Web 应用程序前面的反向代理.
/myname
可以是一个文件夹,但这取决于网络服务器来实现。同样,my-title-article.html
可以是生成的 HTML 文件,但不一定是。服务器可以提取my-title-article
、查询数据库中包含该 slug 的文章,并返回生成的网页。
可以使用 .htaccess 文件中的重写规则修改 url,您可以从 http://en.wikipedia.org/wiki/Htaccess了解相同的信息
我只是在网上冲浪,我注意到一些网址是这样的“samplesite.com/myname”,“/myname”是一种目录吗?
不一定,但可能。可能是该站点使用了 django 之类的框架,在这种情况下 myname 被传递给框架并被解析,并且根本没有对应于 URL 的文字目录结构。
这是否意味着当我成功保存我的文章时,sive 也有一些代码可以让用户创建自己的 html 文件
几乎可以肯定不是。那里发生的事情是您的文章被写入数据库并被检索。它不会在网站上保存为 html。
如果创建了一些目录和文件,这些 URL 会让您感觉像,因为它使它们更加用户友好且易于记忆,但几乎(总是?)从未创建新的。
没有它,您的文章链接将类似于article.com/?id=456789
,不太容易记住并且不太好阅读。
另一种彻底改变 URL 的方法是使用良好的开发框架,例如 CodeIgniter、CakePHP 或 YII。这些框架具有促进 URL 操作的功能。
例如,Amitings 网站开发了 UPL(URL 编程语言),它在 URL 上以单行形式运行。
示例:http ://www.amithings.com/information(2wnCfB).rows(1-10,16-30,31)/view(html)/