当前位置:首页 > 日记 > 正文

详解PHP防止直接访问.php 文件的实现方法

详解PHP防止直接访问.php 文件的实现方法

详解PHP防止直接访问.php 文件的实现方法

为了保证我们用 PHP 写的 API 的安全性要禁止除了接口外的访问方式.

比如我们的项目为 example, 其下有文件夹 dir1、有个接口文件 api.php. 结构为: 输入图片说明

这时候我们要求只能通过 example/api.php 来调用file.php里的服务,不能直接通过example/dir1/file.php来访问.

在 php 里有这样一个变量$_SERVER,这是个数组变量, 里面有各种键值对, 具体的可以搜索一下资料. 那么我们现在可以通过$_SERVER里的SCRIPT_NAME来获取脚本名称. $_SERVER['SCRIPT_NAME'],其值会是类似 xxx/api.php,那么我们就可以通过判断访问链接里是否含有api.php来判断这个访问是否为合法的访问, 如果合法则继续执行, 不合法则阻断.

具体代码如下:

if(strpos($_SERVER['SCRIPT_NAME'], 'api.php') === false){  echo "error";  exit;}

在 file.php里的开头添加上以上代码即可.

以上就是PHP防止直接访问.php 文件的实现方法,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

微信小程序 生命周期函数详解

微信小程序 生命周期函数详解

周期函数,详解,生命,程序,电脑软件,微信小程序 生命周期函数小程序中 判断当前首页是从其他页面返回,还是由入口打开由于小程序的数据在我们退出小程序时并没有得到释放,因此再次点击开来数据依然没有变成初始化 解决方法:在小程序 data 数据…

2017扣扣个性签名搞笑的

2017扣扣个性签名搞笑的

个性签名,搞笑,最新版,热门,经典,  2017年扣扣个性签名档,有哪些搞笑的话语呢?下面是小编给大家带来的扣扣个性签名搞笑的,希望你喜欢。2017扣扣个性签名搞笑的【经典版】1) 能不打就别打,一旦打起来,就给我死命磕2) 我可以爱你爱到撕心裂肺,…

fireworks简单几步制作layer

fireworks简单几步制作layer

几步,简单,电脑软件,fireworks,layer,在使用fireworks的时候,想要使用fireworks做layer,如何制作呢?下面讲解具体的制作方法!最终效果:步骤:1、先打开ps“文件”→”新建”,然后点击工具栏的“椭圆选框工具”2…

在wps2016表格中内容如何快速填充

在wps2016表格中内容如何快速填充

填充,表格,快速,内容,电脑软件,  在WPS2016表格内容快速填充,好像和Excel的快速填充有点不一样了,那么如果你不知道如何表格内容快速填充,可以学习一下。以下是小编为您带来的关于wps2016表格内容快速填充,希望对您有所帮助。wps2016表格内容…

怎么把ppt转换成视频

怎么把ppt转换成视频

转换成,视频,电脑软件,ppt,在我们使用PPT2013时, 怎么把ppt转换成视频?下面小编教你一招最简单实用的方法,希望对大家有所帮助。PPT 2013怎么把ppt转换成视频1、首先 ,使用ppt2013打开你要转化的ppt文件,点击右上角的“文件”选项,如…

如何在Excel中设置单元格只能输入

如何在Excel中设置单元格只能输入

输入,设置,单元格,如何在,电脑软件,如何能让输入的单元格只能输入正值?正值就是大于0的数据吗?是只能输入数值?经过确认后,希望能限制单元格只能输入数值,而且是正数。Excel果然是强大的,这种问题分分钟搞定。与大家分享一下。场景:适合公司人…

详解vue父子组件间传值 | props

详解vue父子组件间传值 | props

传值,组件,父子,详解,电脑软件,先定义一个子组件,在组件中注册props<template> <div> <div>{{message}}(子组件)</div> </div></template><script>export default { props: { message: String //定义传值的类型<br> }}</script><s…

位图怎么转换成矢量图

位图怎么转换成矢量图

矢量图,位图,转换成,电脑软件,我们在做设计的过程中,有时候用到的素材是一张尺寸较小的图片,而又找不到更好的图片时,会给设计过程带来不便,如果图片是位图文件,任意放大或者缩小都会模糊不清,要想获得良好的视觉体验,就必须转换成矢量图,那么有哪…

easyui datagrid 表格中操作栏 按

easyui datagrid 表格中操作栏 按

显示,解决方法,操作,表格,按钮图标,jQuery EasyUI动态添加控件或者ajax加载页面后不能自动渲染解决办法:使用解析器Parser(解析器)$.parser.parse(); // 解析所有页面$.parser.parse('#cc'); // 解析指定节点以上这篇easyui datagrid 表格…

怎么用ppt制作各式各样形状的用ppt

怎么用ppt制作各式各样形状的用ppt

方法,步骤,各式各样,形状,图片,  怎么用ppt制作各式各样形状的图片?PPT课件是应用最广泛的多媒体教学资源,它能够有效的将文字、图形、音频、视频、动画等多种元素融合在一起;下面小编就教你用ppt制作各式各样形状的图片的方法。用ppt制…

Web制作验证码功能实例代码

Web制作验证码功能实例代码

实例代码,验证码,功能,电脑软件,Web,web开发中,经常会使用验证码功能,例如登录、注册,或其他关键功能之前经常会使用。合理使用验证功能可以防止ddos攻击、爬虫攻击等。 实现效果: 实现原理: 由后台提供生成验证码的接口,前端每次请求会后端…

让excel2007不同文档窗口分离显示

让excel2007不同文档窗口分离显示

显示,方法,文档,窗口,电脑软件,  有时候想打开多个excel表格查看或编辑内容,但是只能在一个窗口里面看,需要在任务栏上点击切换,相当麻烦且办公效率低。下面小编教你怎么让excel2007不同文档窗口分离显示,希望对你有帮助!excel2007不同文档窗…