为什么大厂的网站URL都没有后缀?
侧边栏壁纸
  • 累计撰写 57,676 篇文章
  • 累计收到 0 条评论

为什么大厂的网站URL都没有后缀?

James
2020-10-07 / 0 评论 / 68 阅读 / 正在检测是否收录...
比如:https://cloud.tencent.com/login?s_url....

https://mp.weixin.qq.com/cgi-bin/registermidpage?action...


红色后边到底是html还是php或者其他语言?貌似很多大厂都是这种形式,到底有什么好,是通过伪静态实现的么?



感谢楼下各位大佬的解答,大佬们的意思其实这就是一个路由功能,通过URL对应控制器和操作类的,比如thinkphp就是通过伪静态+路由配置实现的


但是我还是不明白为什么要省略.html或者.php,直接php对应过去不好么?


而且,路由的主要功能是多级目录对应相应的控制器和操作方法,比如http://xxxooo.com/index/hello对应index控制器下的hello的方法,实际上他是用了伪静态http://xxxooo.com/index.php/index/hello,主要是为了MVC的实现


但是像腾讯这种https://cloud.tencent.com/login?s_url....,只有一个login,主要功能我感觉应该不是路由的关系吧,莫非真实地址是类似index.php/login之类的?小白勿喷     <P></P> <BR> -----------------------------------------------------<BR> **网友回复**:

引用:inkedus发表于2020-10-700:10

cgi-bin是c++写的


网友回复:

为啥一定要后缀(或者说扩展名)?

举个例子,只要愿意,可以修改nginx的配置文件里让php-fpm同时处理无后缀名的文件也能达到这一效果(不是伪静态哦


网友回复:

应该不是伪静态吧。谁知道用的什么语言,应该有一个配置文件,定义他自己的规则


网友回复:

后端写代码可以路由,对某个url调用某个函数,比如看看flask的helloworld


网友回复:

没后缀意味着搜索引擎会把这当作一个目录。

记得帝国cms可以这样设置。

有利于seo,这是搜索引擎推荐的做法。




网友回复:

引用:hula发表于2020-10-700:27

后端写代码可以路由,对某个url调用某个函数,比如看看flask的helloworld


网友回复:

也就PHP框架会在url末尾加.html和.php


网友回复:

引用:师太发表于2020-10-700:35

大佬的意思其实这就是一个路由功能,通过URL对应控制器和操作类的,比如thinkphp

thinkphp就是通过伪静...


网友回复:

引用:OXO发表于2020-10-701:18

因为html准确的说是纯静态页面,php是指php开发的页面,而楼上说的flask明明是python开发的为啥...


网友回复:

还有就是/login这些只是前端router定义的某个页面

比如AngularJS需要定义Controller要给名字给了名字并不需要.html之类的后缀

有/login你才知道是在登录界面

varapp=angular.module("myApp",["ngRoute"]);
app.config(function($routeProvider){
$routeProvider
.when("/",{
templateUrl:"main.htm"
})
.when("/red",{
templateUrl:"red.htm"
})
.when("/green",{
templateUrl:"green.htm"
})
.when("/blue",{
templateUrl:"blue.htm"
});
});



网友回复:

引用:师太发表于2020-10-701:20

感谢大佬深夜解答 奇怪的知识+1


网友回复:

引用:师太发表于2020-10-701:20

感谢大佬深夜解答 奇怪的知识+1


网友回复:

我都用nodejs,RESTfulAPI沒在跟你副檔名的

主要是nodejspython寫網頁和php邏輯不一樣

php的路徑代表真實的php檔案

但是nodejs的路徑只是對應裡面的一個函數

你想想,函數怎麼會有副檔名呢

CreateUser(un,pwd){}就叫做CreateUser

不會有人把函數名取做CreateUser.js

所以只會有/user/CreateUser,加個.js反而奇怪。

用這類語言開發的時候

從一開始就沒有後綴

而不是偽靜態,後來才去掉

0