首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从不同的服务器读取文件

问从不同的服务器读取文件
EN

Stack Overflow用户
提问于 2014-03-28 10:18:20
回答 2查看 59关注 0票数 0

原因:我是7个网站的网站管理员,为了管理不想要的评论,我阻止了坏评论员的IP。每次我得到一个新的坏IP,我必须编辑所有7台服务器上的每个联系人表单,这是非常耗时的。我想要的是将IP地址放在我的服务器上的一个文件中,然后在我的所有其他站点中读取。

当前代码:(我缩短了IP数组)

代码语言:javascript
复制
<?php
$deny = array("91.200.14.59", "91.207.7.141");
if (in_array ($_SERVER['REMOTE_ADDR'], $deny)) {
   header("location: index.php?page=error404");
   exit();
} ?>

需要回答:,如何从另一台服务器读取IP文件(数组)?一个代码的例子将是非常感谢的。

谢谢

EN

回答 2

Stack Overflow用户

发布于 2014-03-28 10:28:26

相反,我会这样做:在本地(在版本控制存储库中)保持列表的更新,并使用部署工具推送更改。例如,可抗是一个整洁的小工具。示例配置:

代码语言:javascript
复制
---
- hosts: comment-forms
  tasks:
      - name: Ensure blacklist is up to date
        copy: src=blacklist.txt
              dest=/var/www/conf/blacklist.txt
              owner=www-data
              group=www-data
              mode=440

然后,无论何时更新列表,都要部署:

代码语言:javascript
复制
$ ansible-playbook blacklist.yml

一旦你安排好了就这么简单了。这意味着您不需要一直从服务器发出昂贵的远程请求。

票数 0
EN

Stack Overflow用户

发布于 2014-03-28 11:04:23

在这里,你能做的是:

  1. 在您的服务器上创建一个阻塞的IP文件。
代码语言:javascript
复制
- e.g filename = blockip.txt 
- content of blockip.txt: 91.200.14.59,91.207.7.141..

​

  1. 确保文件可以通过http协议访问。例如:http://www.example.com/blockip.txt
  2. 在应用程序服务器上,创建一个函数,它将读取blockip.txt文件并与远程ip进行比较。例句:您可以使用任何逻辑来读取文件和比较ip地址。

每次您获得只需更新blockip.txt文件的新IP地址时,rest都将由函数check_span_user()来处理。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22709951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档