博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php 处理 非法访问
阅读量:6845 次
发布时间:2019-06-26

本文共 979 字,大约阅读时间需要 3 分钟。

前言

在浏览器输入一个网址链接,来定位一个资源是互联网工作的基础,但是为了网站安全性考虑,对网站进行非法访问是非常的有必要的。今天就来总结一下常用的禁止非法访问的一些实现方式。

Session 方式

大部分网站都会有登陆这么个功能,而基于此功能的一个很重要的模块就是“身份验证”,当然了和OAuth等专业的认证是没法比的啦。这里就是简单的对于用户登陆成功后的一个认证。尤其是在跨页处理一些事务的时候,Session的作用就会更加的明显了,今天就借助于Session来实现一个禁止非法访问的功能。

原理比较简单,用到了两个php文件,index.php的作用是模拟用户登录,然后再session中写入“身份”, 然后再访问该网站其他的页面的时候就会带着这个身份验证进行登录。

index.php模拟身份验证

目标资源页session.php

效果演示

  • 没有身份标记时提示相关信息
    非法访问时
  • 模拟验证
    模拟登陆
  • 模拟验证通过后访问资源页面
    登陆成功后访问资源页面

URL判断法

我个人觉得,根据URL方式来处理的一个比较好的方法是通过路由设置,通过一个路由大总管,处理一切外部请求,想来效果一定会是不错的吧。

下面介绍一下一个简易版的实现,功能就是防外链处理。核心就是通过Referer来实现。这点比较简单,做过爬虫的一下子就会明白了,就不多说哦。

源文件

点我访问资源页!!!
访问我们的资源哦!";}else{ echo "可以正常的访问资源页面了!";}

涉及到的index.php文件简单的设置一个超链接即可,作用就是为资源也添加上一个Referer,来保证资源只能在本站访问的效果。

index.php文件内容

点我访问资源页!!!";

演示效果

这里写图片描述

大致可以通过这种方式实现防止外链的效果,但是如果使用这种方式,维护起来还是比较麻烦的。

总结

简单来回顾一下,在PHP中实现禁止非法访问看起来还是比较容易的,但是实际上这里面的学问还有很多很多,这里演示的不过是冰山一角上那头牛身上的一根微不足道的牛毛罢了。

从实用性的角度而言,各有各的好处,只能说各有利弊吧,不能说那一种更好,只能说哪一种更加适合。

通过添加身份标记的话比较轻便,也更加容易维护;通过URL路由控制的话维护起来比较麻烦,但是灵活性可能会有比较好的效果。

怎么说呢,具体情况具体分析吧。

你可能感兴趣的文章
测地膨胀和膨胀重建—lhMorpRDilate
查看>>
PHP开发Android应用程序(转)
查看>>
Knockout.js随手记(8)
查看>>
mysql 安装过程中的错误:my-template.ini could not be processed and written to XXX\my.ini.Error code-1...
查看>>
计算A/3,不用除法
查看>>
ERStudio的使用
查看>>
git 本地与服务器的同步
查看>>
css鼠标移动到文字上怎样变化背景颜色
查看>>
HBase 实战(1)--HBase的数据导入方式
查看>>
浅谈WEB页面提速(前端向)
查看>>
05 语句处理
查看>>
POJ 3177 Redundant Paths POJ 3352 Road Construction(双连接)
查看>>
ERROR: Java 1.7 or later is required to run Apache Drill.
查看>>
初入android驱动开发之字符设备(一)
查看>>
外网上传到NAS速度很慢是什么情况?上行1M都不到,但是测试有4M
查看>>
ASP.NET Core 中使用 GrayLog 记录日志
查看>>
RabbitMQ的几种工作模式
查看>>
关于Java类加载双亲委派机制的思考(附一道面试题)
查看>>
java中关于volatile的理解疑问?
查看>>
SQL Server Management Studio(SSMS)的使用与配置整理
查看>>