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


Posted in PHP onJuly 28, 2017

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

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

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

详解PHP防止直接访问.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 文件的实现方法,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
Oracle Faq(Oracle的版本)
Oct 09 PHP
分享PHP入门的学习方法
Jan 02 PHP
PHPCMS的使用小结
Sep 20 PHP
判断Keep-Alive模式的HTTP请求的结束的实现代码
Aug 06 PHP
php 注册时输入信息验证器的实现详解
Jul 05 PHP
php获取用户浏览器版本的方法
Jan 03 PHP
PHP 实现代码复用的一个方法 traits新特性
Feb 22 PHP
Zend Framework实现多文件上传功能实例
Mar 21 PHP
PHP简单判断字符串是否包含另一个字符串的方法
Mar 25 PHP
基于php实现的php代码加密解密类完整实例
Oct 12 PHP
详解PHP中foreach的用法和实例
Oct 25 PHP
PHP常用字符串函数用法实例总结
Jun 04 PHP
php简单实现单态设计模式的方法分析
Jul 28 #PHP
[原创]PHP实现SQL语句格式化功能的方法
Jul 28 #PHP
使用php自动备份数据库表的实现方法
Jul 28 #PHP
PHP自定义函数判断是否为Get、Post及Ajax提交的方法
Jul 27 #PHP
PHP 7安装使用体验之性能大提升,兼容性强,扩展支持不够(升级PHP要谨慎)
Jul 27 #PHP
laravel 5.4中实现无限级分类的方法示例
Jul 27 #PHP
SCP远程VPS快速搬家和WDCP升级php5.3安装memcached和eaccelerator教程
Jul 27 #PHP
You might like
PHP加密扩展库Mcrypt安装和实例
2013/11/10 PHP
php使用多个进程同时控制文件读写示例
2014/02/28 PHP
php中mysql连接方式PDO使用详解
2015/02/25 PHP
php校验表单检测字段是否为空的方法
2015/03/20 PHP
php简单统计在线人数的方法
2016/05/10 PHP
Yii2使用$this->context获取当前的Module、Controller(控制器)、Action等
2017/03/29 PHP
自己实现string的substring方法 人民币小写转大写,数字反转,正则优化
2012/09/02 Javascript
jQuery中:visible选择器用法实例
2014/12/30 Javascript
Seajs 简易文档 提供简单、极致的模块化开发体验
2016/04/13 Javascript
URL的参数中有加号传值变为空格的问题(URL特殊字符)
2016/11/04 Javascript
jquery-mobile基础属性与用法详解
2016/11/23 Javascript
URL中“#” “?” &“”号的作用浅析
2017/02/04 Javascript
基于node.js之调试器详解
2017/08/22 Javascript
浅谈vue中使用图片懒加载vue-lazyload插件详细指南
2017/10/23 Javascript
浅谈react-router HashRouter和BrowserRouter的使用
2017/12/29 Javascript
react配合antd组件实现的管理系统示例代码
2018/04/24 Javascript
react native 获取地理位置的方法示例
2018/08/28 Javascript
微信小程序如何再次获取用户授权的方法
2019/05/10 Javascript
微信小程序实现商城倒计时
2020/11/01 Javascript
vue实现文字加密功能
2019/09/27 Javascript
js使用文档就绪函数动态改变页面内容示例【innerHTML、innerText】
2019/11/07 Javascript
Python爬虫实现爬取京东手机页面的图片(实例代码)
2017/11/30 Python
Python数据拟合与广义线性回归算法学习
2017/12/22 Python
python获取微信小程序手机号并绑定遇到的坑
2018/11/19 Python
python使用Geany编辑器配置方法
2020/02/21 Python
HTML5 Canvas概述
2009/08/26 HTML / CSS
Html5 FileReader实现即时上传图片功能实例代码
2014/09/01 HTML / CSS
阿玛尼美妆俄罗斯官网:Giorgio Armani Beauty RU
2020/07/19 全球购物
腾讯技术类校园招聘笔试试题
2014/05/06 面试题
优秀管理者获奖感言
2014/02/17 职场文书
金融事务专业毕业生求职信
2014/02/23 职场文书
安康杯竞赛活动总结
2014/05/05 职场文书
公务员年度考核评语
2014/12/31 职场文书
考研导师推荐信范文
2015/03/27 职场文书
读《教育心理学》心得体会
2016/01/22 职场文书
关于JavaScript轮播图的实现
2021/11/20 Javascript