当前位置:Gxlcms > PHP教程 > api-如何实现不带后缀访问php文件

api-如何实现不带后缀访问php文件

时间:2021-07-01 10:21:17 帮助过:31人阅读

如果问题很easy请见谅,我才用php没几天现学现用的
我使用了oauth2.0的php框架
http://localhost/api/token.php这样的地址
如何实现用http://localhost/api/token 访问

我搜过,但是貌似可能是我的姿势不对(关键词不对),google搜不到

回复内容:

如果问题很easy请见谅,我才用php没几天现学现用的
我使用了oauth2.0的php框架
http://localhost/api/token.php这样的地址
如何实现用http://localhost/api/token 访问

我搜过,但是貌似可能是我的姿势不对(关键词不对),google搜不到

楼上说的都对,但是可能楼主需要一个简洁的答案。。。

token目录下放置index.php,即可实现用http://localhost/api/token访问http://localhost/api/token/index.php

【割】
Oh sorry……

那用稍微复杂一点点的方法吧。

.htaccess文件最后加入两句话

RewriteEngine on
RewriteRule ^(api/token) token.php [L]

你就可以通过根目录下的token.php来接受api/token

其中第一句很可能不要,因为.htaccess里可能之前出现过这句话了。

当然可能你当前没有.htaccess文件,那你可以自己创建一个。

你也可能发现.htaccess没有效果,那就要去配置httpd.conf了……

这个问题属于HTTP服务器的管辖范围,不管PHP的框架是什么的。

可以考虑的做法有:

  • HTTP重写技术,让符合特定正则表达式的URL,交由某个特定的脚本处理(WordPress等很多程序的实践,推荐)
  • HTTP重定向,和重写差不多
  • 直接提供token文件软连接到token.php,然后配置HTTP服务器使token文件就算无扩展名也由php解释器处理(不推荐)
  • 甚至做个token/目录,借助首页文件也算个办法

具体的作法,你需要按照你的HTTP服务器软件是什么,再具体查询。

可以伪静态实现

就用伪静态就行,把.php忽略掉

很多php的框架都支持这种,这种叫Url路由

也可以把所有请求rewrite到路由,路由分配

人气教程排行