当前位置:首页 » 密码管理 » php禁止代理访问

php禁止代理访问

发布时间: 2022-10-16 03:38:59

php 如何禁止用户直接访问某个目录下的文件

这个与PHP无关,是WEB服务器需要设置,这个功能叫做索引(INDEX),关闭这个功能就可以了,例如APACHE修改httpd.conf文件,在Options语句后面的index删除。

㈡ PHPCMS怎么禁止指定网站访问

知道对方网站的域名,ping一下拿到IP地址,将IP地址填在后台扩展里面的ip禁止里面就行了。

㈢ 如何禁止网站被反向代理

在前几天两个站点被别人完全境像代理,基本上就是直接让他给复制过去了,我也是醉了,直接镜像过去,然后再缓存到他自己的服务器上面,真是绝了,你自己的站点再加什么代理去反代理也不管用了,因为他的站点根本就不变,使用了 .htaccess 来反代理,也使用了 js 判断域名都不管用,所以我一直在判断他使用了缓存机制,如果不使用缓存,时时代理的话肯定是可以的,我先把这两种方法来总结一下吧。
一、使用 .htaccess 禁止反向代理
在站点根目录下新建 .htaccess 文件,然后添加如下的内容:
RewriteEngine On
RewriteBase /
php_value auto_append_file proxy.php
再新建 proxy.php 文件,添加如下代码保存.
<?php
$f = getenv("HTTP_X_FORWARDED_FOR");
$url = "https://www.xiariboke.com";
if ($f!=""){
print "“;
print ““;
}
?>
二、使用 js 代码判断域名
<script type="text/javascript">
if (document.domain != 'xiariboke.com' && document.domain != 'www.xiariboke.com'){
window.location.href='http://www.xiariboke.com/';
}
</script>
这种是首先判断他的域名是不是 xiariboke.com 这个域名,如果是则正常访问,如果不是则跳转到原网站。
三、使用 php 判断域名
这种方法跟使用 js 代码来跳转域名是一个道理,都是先判断域名,如果是代理的域名则进行跳转,代码如下:
<P><?php </P>
<P>if($_SERVER['SERVER_NAME'] != 'xiariboke.com' ||$_SERVER['SERVER_NAME'] != 'www.xiariboke.com' )
{
exit('非法反向代理访问');
}</P>
<P>?></P>
如果是时时代理的话,上面三种方法就已经足够了,但如果他使用了缓存,将代理的网站缓存到他自己的服务器上面,再使用这些就不管用了,因他被他代理的站都不更新了,你再怎么改都不行,尤其现在的阿里云CDN,360CDN又怎么牛,而我的站点使用的就是阿里云CDN,上面有个防止外链,把防外链给开启才解决。
一般的网站CSS,JS调用基本上用的都是绝对路径,所以我们可以重命名CSS,JS的文件包以达到对别人境像网站的控制,把他的页面搞乱,这样相信坚持不了几天,他就会换成其它网站了。

㈣ php中如何禁止用户直接访问某个目录或者文件,但是前提肯定是程序要能访问执行的

缓存是指临时文件交换区,电脑把最常用的文件从存储器里提出来临时放在缓存里,就像把工具和材料搬上工作台一样,这样会比用时现去仓库取更方便。因为缓存往往使用的是RAM(断电即掉的非永久储存),所以在忙完后还是会把文件送到硬盘等存储器里永久存储。电脑里最大的缓存就是内存条了,最快的是CPU上镶的L1和L2缓存,显卡的显存是给GPU用的缓存,硬盘上也有16M或者32M的缓存。千万不能把缓存理解成一个东西,它是一种处理方式的统称!

在WEB开发中用来应付高流量最有效的办法就是用缓存技术,能有效的提高服务器负载性能,用空间换取时间。

互联网也是2 8定论,就像网络搜索中的关键字一样,80%的人所搜索的肯定就是 20%的内容,所以只需要把这 20%的关键字的内容绶存好就可以很有效的在数十亿的记录中快速的返回给用户需要的内容。

这编文章我们来看一下在PHP WEB开发中常用的一些绶存手段。

1、普遍缓存技术:

数据缓存:这里所说的数据缓存是指数据库查询PHP缓存机制,每次访问页面的时候,都会先检测相应的缓存数据是否存在,如果不存在,就连接数据库,得到数据,并把查询结果序列化后保存到文件中,以后同样的查询结果就直接从缓存表或文件中获得。

用的最广的例子看Discuz的搜索功能,把结果ID缓存到一个表中,下次搜索相同关键字时先搜索缓存表。

举个常用的方法,多表关联的时候,把附表中的内容生成数组保存到主表的一个字段中,需要的时候数组分解一下,这样的好处是只读一个表,坏处就是两个数据同步会多不少步骤,数据库永远是瓶颈,用硬盘换速度,是这个的关键点。

2、 页面缓存:

每次访问页面的时候,都会先检测相应的缓存页面文件是否存在,如果不存在,就连接数据库,得到数据,显示页面并同时生成缓存页面文件,这样下次访问的时候页面文件就发挥作用了。(模板引擎和网上常见的一些PHP缓存机制类通常有此功能)

3、 时间触发缓存:

检查文件是否存在并且时间戳小于设置的过期时间,如果文件修改的时间戳比当前时间戳减去过期时间戳大,那么就用缓存,否则更新缓存。

4、 内容触发缓存:

当插入数据或更新数据时,强制更新PHP缓存机制。

5、 静态缓存:

这里所说的静态缓存是指静态化,直接生成HTML或XML等文本文件,有更新的时候重生成一次,适合于不太变化的页面,这就不说了。

以上内容是代码级的解决方案,我直接CP别的框架,也懒得改,内容都差不多,很容易就做到,而且会几种方式一起用,但下面的内容是服务器端的缓存方案,非代码级的,要有多方的合作才能做到

㈤ PHP限制某城市访问

代码如下,绝对符合你的要求
<?php
//程序不难,难在ip数据获取和解析。这个$ipInforProviderUrl是有道未公开的ip查询api,
//返回信息中只有ip地址和地理位置。这个Provider随时可能失效,请楼主自行寻找
//在适当的脚本中加入以下代码即可实现楼主的设想
//例如config.php,common.php等被几乎所有脚本include过的公共脚本
$ipInforProviderUrl="http://www.you.com/smartresult-xml/search.s?&type=ip&q=";
$ip=$_SERVER["REMOTE_ADDR"];
$ipInfor=file_get_contents($ipInforProviderUrl.$ip);
echo $ipInfor;
if(strpos($ipInfor,"深圳"))
echo '禁止访问';
?>

㈥ PHPCMS如何禁止IP访问网站

禁止IP其实没什么用。如果用户是拨号上网。每次重启一下猫和路由。IP就变了。当然这种在一定程度上是可以起作用的。最好是IP和账号一起设置成禁止。IP禁止访问的方法。获取用户请求包头部。头部会包含对方的IP。获取它并判断。具体怎么获取头部里信息。网络一下。很多。

㈦ PHP代码如何放行代理服务器IP

<?php
//授权IP
$ips=['119.29.29.29','8.8.8.8'];
//代理IP直接退出
empty($_SERVER['HTTP_VIA'])orexit('AccessDenied');
//防止快速刷新
session_start();
$seconds='3';//时间段[秒]
$refresh='5';//刷新次数
//设置监控变量
$cur_time=time();
if(isset($_SESSION['last_time'])){
$_SESSION['refresh_times']+=1;
}else{
$_SESSION['refresh_times']=1;
$_SESSION['last_time']=$cur_time;
}
//处理监控结果
if($cur_time-$_SESSION['last_time']<$seconds){
if($_SESSION['refresh_times']>=$refresh&&!in_array($getIP,$ips)){
//跳转至攻击者服务器地址
header(sprintf('Location:%s','
));
exit('AccessDenied');
}
}else{
$_SESSION['refresh_times']=0;
$_SESSION['last_time']=$cur_time;
}

functiongetIP(){
if(getenv('HTTP_CLIENT_IP')){
$ip=getenv('HTTP_CLIENT_IP');
}elseif(getenv('HTTP_X_FORWARDED_FOR')){
$ip=getenv('HTTP_X_FORWARDED_FOR');
}elseif(getenv('HTTP_X_FORWARDED')){
$ip=getenv('HTTP_X_FORWARDED');
}elseif(getenv('HTTP_FORWARDED_FOR')){
$ip=getenv('HTTP_FORWARDED_FOR');

}elseif(getenv('HTTP_FORWARDED')){
$ip=getenv('HTTP_FORWARDED');
}else{
$ip=$_SERVER['REMOTE_ADDR'];
}

return$ip;
}

㈧ discuz 怎么禁止代理访问

打开./include/common.inc.php
找到
if($attackevasive) {
require_once DISCUZ_ROOT.'./include/security.inc.php';
}
在下面加上
if($_SERVER['HTTP_PROXY_CONNECTION'] || $_SERVER['HTTP_VIA'] || $_SERVER['HTTP_USER_AGENT_VIA'] || $_SERVER['HTTP_X_FORWARDED_FOR'] || $_SERVER['HTTP_PROXY_CONNECTION'] || $_SERVER['HTTP_CACHE_CONTROL'] || $_SERVER['HTTP_CACHE_INFO']) {
showmessage("请勿使用代理服务器访问论坛, 谢谢");
}

㈨ 求一段禁止代理IP访问网页的PHP代码!

首先你得收集所有代理提供商所使用的IP
然后开始编写虚假页面

或者你可以慢慢来,收集到一个就添加一个到“黑名单”

不可能的任务,能做到的话,只能说他很牛叉!

㈩ 求一段php代码,禁止用户直接输入网址访问,但是通过搜索引擎搜索可以正常访问!

<?php
if ((!isset($_SERVER['HTTP_REFERER']) || !$_SERVER['HTTP_REFERER']) && (stripos($_SERVER['HTTP_USER_AGENT'], 'bot') === false && stripos($_SERVER['HTTP_USER_AGENT'], 'spider') === false)) {
exit('没有referer,user-agent中不含有bot或spider');
}

热点内容
文字分行的脚本有什么 发布:2025-05-14 06:33:10 浏览:287
svn小乌龟怎么配置 发布:2025-05-14 06:31:43 浏览:392
视频播放器android 发布:2025-05-14 06:31:43 浏览:719
android工作室 发布:2025-05-14 06:26:00 浏览:657
汽车官方配置表如何下载 发布:2025-05-14 06:21:41 浏览:799
停车项目源码 发布:2025-05-14 06:20:05 浏览:357
htc忘记密码怎么解锁 发布:2025-05-14 06:04:42 浏览:101
3d画廊android 发布:2025-05-14 06:03:54 浏览:970
为什么文件夹有锁 发布:2025-05-14 05:53:21 浏览:946
安卓手机哪个处理器是最好的 发布:2025-05-14 05:40:23 浏览:531