全球主机交流论坛

标题: 为什么大厂的网站URL都没有后缀? [打印本页]

作者: 师太    时间: 2020-10-7 00:09
标题: 为什么大厂的网站URL都没有后缀?
本帖最后由 师太 于 2020-10-7 00:46 编辑

        比如: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之类的?小白勿喷        
作者: gr58046576    时间: 2020-10-7 00:10
应该是伪静态之类的吧
作者: inkedus    时间: 2020-10-7 00:10
cgi-bin 是c++写的
作者: 16qf    时间: 2020-10-7 00:13
楼上马总正解
作者: 师太    时间: 2020-10-7 00:15
inkedus 发表于 2020-10-7 00:10
cgi-bin 是c++写的


C++是后端吧,前端总要生成html显示的,这个不重要,我想问的是为什么刻意省略了html,比如云函数网址都是没有后缀的
作者: timelo    时间: 2020-10-7 00:19
不同语言的路由解析规则不……
作者: naohion    时间: 2020-10-7 00:19
提示: 作者被禁止或删除 内容自动屏蔽
作者: 滑稽    时间: 2020-10-7 00:21
为啥一定要后缀(或者说扩展名)?
举个例子,只要愿意,可以修改nginx的配置文件里让php-fpm同时处理无后缀名的文件也能达到这一效果(不是伪静态哦
作者: william2ct    时间: 2020-10-7 00:22
应该不是伪静态吧。 谁知道用的什么语言,应该有一个配置文件,定义他自己的规则
作者: hula    时间: 2020-10-7 00:27
后端写代码可以路由,对某个url调用某个函数,比如看看flask的hello world
作者: idczy4zq    时间: 2020-10-7 00:27
........麻烦别问这么基础的东西好吗
作者: tir    时间: 2020-10-7 00:29
我也不知道,这样可能更安全?
作者: 猛犸    时间: 2020-10-7 00:29
没后缀意味着搜索引擎会把这当作一个目录。

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

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

作者: 师太    时间: 2020-10-7 00:35
hula 发表于 2020-10-7 00:27
后端写代码可以路由,对某个url调用某个函数,比如看看flask的hello world


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

thinkphp 就是通过伪静态+路由配置实现的

但是我还是不明白为什么要省略.html或者.php,直接php对应过去不好么?更加简单方便吧
作者: old_driver    时间: 2020-10-7 01:06
也就PHP框架会在url末尾加.html和.php
作者: OXO    时间: 2020-10-7 01:18
提示: 作者被禁止或删除 内容自动屏蔽
作者: 师太    时间: 2020-10-7 01:20
OXO 发表于 2020-10-7 01:18
因为 html 准确的说是纯静态页面,php 是指 php 开发的页面,而楼上说的 flask 明明是 python 开发的为啥 ...


感谢大佬深夜解答   奇怪的知识+1
作者: 悠米    时间: 2020-10-7 01:24
本帖最后由 悠米 于 2020-10-7 01:26 编辑

还有就是 /login 这些只是前端router定义的某个页面
比如AngularJS 需要定义Controller 要给名字 给了名字并不需要.html之类的后缀
有/login 你才知道是在登录界面



  1. var app = angular.module("myApp", ["ngRoute"]);
  2. app.config(function($routeProvider) {
  3.   $routeProvider
  4.   .when("/", {
  5.     templateUrl : "main.htm"
  6.   })
  7.   .when("/red", {
  8.     templateUrl : "red.htm"
  9.   })
  10.   .when("/green", {
  11.     templateUrl : "green.htm"
  12.   })
  13.   .when("/blue", {
  14.     templateUrl : "blue.htm"
  15.   });
  16. });
复制代码

作者: OXO    时间: 2020-10-7 01:25
提示: 作者被禁止或删除 内容自动屏蔽
作者: 王友元同学    时间: 2020-10-7 01:26
伪静态嘛?
作者: citywar    时间: 2020-10-7 01:32
这个比较正经的帖子
作者: caddy    时间: 2020-10-7 02:03
师太 发表于 2020-10-7 01:20
感谢大佬深夜解答   奇怪的知识+1

哪有什么奇怪的

9012年了,别老是只认得PHP,html的,现在程序都是百花齐放,什么语言都有,这不需要你懂,只要用过其他语言的代码,你就根本没有什么觉得奇怪的。

你觉得奇怪,只能说明你只用过WP、dedecms这类的php的程序
作者: s920361    时间: 2020-10-7 02:44
本帖最后由 s920361 于 2020-10-7 02:54 编辑

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

主要是nodejs python寫網頁和php邏輯不一樣
php的路徑代表真實的php檔案
但是nodejs的路徑只是對應裡面的一個函數

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

CreateUser(un,pwd){}就叫做CreateUser
不會有人把函數名取做CreateUser.js

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

用這類語言開發的時候
從一開始就沒有後綴
而不是偽靜態,後來才去掉
作者: Lost_Scarecrow    时间: 2020-10-7 03:10
一帖看出论坛水平
作者: 师太    时间: 2020-10-7 06:47
s920361 发表于 2020-10-7 02:44
我都用nodejs,RESTful API沒在跟你副檔名的

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

感谢大佬解答
作者: 师太    时间: 2020-10-7 06:48
悠米 发表于 2020-10-7 01:24
还有就是 /login 这些只是前端router定义的某个页面
比如AngularJS 需要定义Controller 要给名字 给了名字 ...

感谢大佬




欢迎光临 全球主机交流论坛 (https://loc.888543.xyz/) Powered by Discuz! X3.4