Apache 2.4 需要 ip 不起作用

2024-03-26

尝试从旧的允许、拒绝、顺序语法转换为新语法以保护 WordPress 管理部分,但我无法让它识别我的 IP。

这就是我的.htaccess文件包含在/wp-admin folder.

ErrorDocument 401 default
ErrorDocument 403 default

# Disallow access for everyone except these IPs
<RequireAny>
    Require ip 50.153.218.4
</RequireAny>

# Allow plugin access to admin-ajax.php around password protection
<Files admin-ajax.php>
    <RequireAll>
        Require all granted
    </RequireAll>
</Files>

这就是我所拥有的.htaccess在WordPress mod重写信息的根目录下。

# Protect WordPress
ErrorDocument 401 default
ErrorDocument 403 default

<Files wp-login.php>
    <RequireAny>
        Require ip 50.153.218.4
    </RequireAny>
</Files>

但我总是收到 403 Forbidden 错误。当我在 IP 下添加 Require All Granted 时,它工作正常,但这将它向每个用户开放。看来 apache 没有正确读取我的 IP?有人知道我做错了什么吗?


你的语法对我来说看起来非常好。

我认为 apache 可能无法正确读取用户 IP 的唯一原因是如果您位于代理或负载平衡器后面。如果是这种情况你会使用X-Forwarded-For代替ip。在 PHP 中,您可以通过比较来确认您是否位于代理后面$_SERVER['REMOTE_ADDR'] and $_SERVER['HTTP_X_FORWARDED_FOR'].

如果这不是问题,那么您可能会更好地找到答案服务器故障 http://serverfault.com.

不过我可以为您提供一些解决方法。最简单的解决方案可能是使用几种 WordPress 之一安全插件 https://wordpress.org/plugins/better-wp-security/允许您通过 IP 地址限制对后端的访问。

或者,在您的主题或插件中,您可以实现相同类型的身份验证逻辑:

add_action('init', function() {
    $allowed_ips = array('50.153.218.4');
    if(is_admin() || $GLOBALS['pagenow'] == 'wp-login.php') {
        if( !DOING_AJAX && !in_array($_SERVER['REMOTE_ADDR'], $allowed_ips) ) {
            wp_die('', 'Forbidden' array(
                'response' => 403
            ));
        }
    }
});

更新:从评论来看,似乎涉及代理。这should work:

ErrorDocument 401 default
ErrorDocument 403 default

SetEnvIF X-Forwarded-For "50.153.218.4" AllowIP

# Disallow access for everyone except these IPs
<RequireAny>
    Require env AllowIP
</RequireAny>

# Allow plugin access to admin-ajax.php around password protection
<Files admin-ajax.php>
    <RequireAll>
        Require all granted
    </RequireAll>
</Files>

and

# Protect WordPress
ErrorDocument 401 default
ErrorDocument 403 default

SetEnvIF X-Forwarded-For "50.153.218.4" AllowIP

<Files wp-login.php>
    <RequireAny>
         Require env AllowIP
    </RequireAny>
</Files>

您还应该能够使用“允许、拒绝”语法的类似方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Apache 2.4 需要 ip 不起作用 的相关文章

  • 如何在 WordPress 中按类别获取所有帖子

    我想在 WordPress 中按类别获取帖子 args array post type gt project postslist get posts args 0 gt WP Post 对象 ID gt 421 post author gt
  • 显式删除会话cookie会产生什么影响?

    我使用 php session 来维护用户的会话 Session 在登录后创建 在注销或超时后销毁 我需要管理面板中的一个选项来强制注销任何用户 如果他在网站上处于活动状态 我怎样才能做到这一点 我正在考虑删除临时会话文件 这应该有效地破坏
  • 通过 AJP 将 REMOTE_USER 转发到 tomcat(例如用于 shibboleth)

    今天我刚刚遇到了以下问题 1 我将apache配置为基本身份验证 需要有效用户 这有效 2 我进一步配置 apache 将某些路径 在我的例子中为 idp 的请求转发到 tomcat servlet shibboleth IDP 结果是 s
  • 用于网络服务器日志分析的软件? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我可以得到一些关于 Apache 2 2 访问日志文件的优秀日志分析软件的建议 最好有一些理由 吗 我听说过韦巴利泽 http www w
  • 垃圾邮件打败了我所有的验证码

    我有一个 WordPress 博客 我在上面使用验证码插件的时间最长 因为它有效 最近我收到了大量的垃圾邮件 然后我尝试执行通过 PHP 生成的 将这些随机数添加在一起 但仍然没有成功 我不太确定需要做什么来阻止这些垃圾邮件 但这很烦人 我
  • PHP 从命令行启动 gui 程序,但 apache 不启动

    首先 我阅读了有类似问题的人的一些帖子 但所有答案都没有超出导出 DISPLAY 0 0 和 xauth cookies 这是我的问题 提前感谢您的宝贵时间 我开发了一个小库 它使用 OpenGL 和 GLSL 渲染货架 过去几天我将它包装
  • 当我使用 session_start() 时,Xampp 7.0.1 Apache 崩溃

    当我在 PHP 中使用 session start 启动会话时 我的 Apache 服务器停止工作 我正在使用 Windows 版 Xampp 7 0 1 我的配置文件如下所示 即使我把它放在文件的第一行 它也不起作用 有人知道如何解决这个
  • 如何让Apache服务index.php而不是index.html?

    如果我将以下行放入index html文件 使 Apache 包含index php file 参观index html页面向我显示了这个 这是为什么 为什么它实际上不包含 PHP 文件 正如其他人指出的那样 您很可能没有 html设置为处
  • 阻止搜索引擎抓取目录

    我的网站有这样的 URL 最长 结构 http www example com xyz pqr abcd efgh 123 html http www example com xyz pqr abcd efgh 123 html 因此最多有
  • WordPress 包含 SVG 文件错误

    我使用 PHP 和 WordPress 在本地主机上 我可以毫无问题地包含 SVG 文件 但在实时服务器上 我尝试包含一个 SVG 文件以便能够使用 CSS 对其进行样式设置 我收到此错误消息 Parse error syntax erro
  • 如何更改 Apache 服务器的根目录? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何更改 Apache 服务器的文档根目录 我基本上想要localhost从 来 users spencer projects目录而不是
  • wp_unregister 和 wp_enqueue

    有人建议我使用 wp unregister 和 wp enqueue 将 wordpress jquery 库替换为 google 托管的库 因为 wordpress 有一些问题 然而 当我尝试将这些插入我的 WordPress 网站时 它
  • 如何让 mod_wsgi 在 Mac 上运行?

    几个小时以来 我一直在尝试在 Mac 上安装最新版本的 mod wsgi 3 3 我使用的是 Snow Leopard 并且有系统附带的 Apache Apache 2 2 15 和 Python 2 6 1 r261 67515 版本 我
  • 新的 Wp_Query() 或 pre_get_posts() 来查看自定义帖子类型的所有帖子?

    我有一个存档模板文件 显示自定义帖子类型人员的所有帖子 称为 archive personnel php 这是文件的开头
  • 如何在 WordPress/WooCommerce 3+ 中向评论表单添加自定义字段

    我正在尝试在产品评论中添加 电话 字段 WooCommerce 3 针对未注册用户 来宾 电话号码只能由管理员在管理面板中看到 电话字段需要填写 Required 我尝试了这段代码 但这不起作用 function true phone nu
  • WooCommerce:返回特定类别中所有产品 ID 的函数

    我认为问题的标题是相当不言自明的 但要详细说明 我正在尝试在 Woocommerce 中制作自定义类别页面 我需要的是返回特定类别中的所有产品 ID 我见过这个帖子 https stackoverflow com questions 210
  • 使用 ConcurrentUpdateSolrServer 需要哪些 jar?

    目前使用 solrServer new CommonsHttpSolrServer serverUrl 和这些罐子 apache solr core 3 6 0 apache solr solrj 3 6 0 commons codec 1
  • php隐藏所有错误[重复]

    这个问题在这里已经有答案了 隐藏的最佳做法是什么allPHP 错误 因为我不想向用户显示错误 我尝试过使用 htacess通过输入代码php flag display errors off在那里 但它返回给我一个500 error 还有其他
  • 无法在 Java/Apache HttpClient 中处理带有垂直/管道栏的 url

    例如 如果我想处理这个网址 post new HttpPost http testurl com lists lprocess action LoadList 401814 1 Java Apache 不允许我这么做 因为它说竖线 是非法的
  • 2 使用我的代码在数组中查询

    我使用滑块来显示我的 WordPress 精选文章 它选择一个自定义类别并返回一定数量的帖子 如何将显示的第一篇帖子设为自定义帖子 我可以直接在滑块代码中添加特定帖子的 ID吗使该帖子首先出现 然后是原始查询返回的其他内容 例如 在页面上

随机推荐

  • 艺术::ConditionVariable::WaitHoldingLocks(艺术::线程*)

    我们的移动应用程序已发布在 Google Play 商店中 崩溃和 ANR 报告在 Firebase Crashlytics 中生成 出现如下所示的ANR 0 libc so 系统调用 28 1 libart so 艺术 Condition
  • SolrNET - 从 Nuget 拉取时无法加载文件或程序集“HttpWebAdapters”

    我正在使用 Nuget 在 ASP NET MVC 项目中获取最新版本的 SolrNET 和 StructureMap SolrNetIntegration x IncludeRegistry new SolrNetRegistry Sol
  • 如何以编程方式缩放 UIScrollView?

    我想以基类不支持的方式缩放和取消缩放 例如 在收到双击时 在玩过东西并使其正常工作后 我正在回答我自己的问题 Apple 在其有关如何处理双击的文档中提供了一个非常简单的示例 进行编程缩放的基本方法是您自己执行此操作 然后告诉 UIScro
  • 按 IN 运算符中指定的特定顺序选择 ID

    我想尝试以特定顺序选择一组特定的数字 以便与循环一起使用 SELECT ID FROM filter WHERE id in 87 97 117 52 240 76 141 137 157 255 186 196 133 175 153 2
  • 如何清除 Angular Reactive Forms 中的 FormArray

    我正在重置表单 它重置整个表单 但 FormArray 除外 创建表单并在其中声明 formArray createForm this invoiceForm this formBuilder group name Validators r
  • 未使用 setImageURI() 在 ImageView 中设置图像

    创建自己的相机 因为我需要对焦来拍照 相机工作正常 正如预期的那样 通过URI活动之间 I ve ImageView in Next Screen which i used to set the Image with imgView set
  • python 3 中随机游走的奇怪结果?

    我刚刚开始学习 python 并且在打印 3 维随机游走的新位置时遇到问题 没有弹出错误 但是很明显打印的输出 x y z 是不合理的 当逐步模拟随机游走时 我假设每次只应更改 x y z 中的一个值 但输出中似乎没有 我正在尝试调试它 但
  • 如何在 WPF 中对 DataGrid 列标题进行分组

    是否可以在 WPF 数据网格中执行此操作 A header B Header A1Header A2Header B1Header B2Header A1Data A2 Data B1 Data B2 Data A1Data A2 Data
  • 如何在 Eclipse 中使用 Antlr4 Ide 查看实时解析树?

    我是 Antlr4 的新手 但我知道 Eclipse 存在一个插件 我有一个简单的问题 创建 g4 文件后 如何可视化实时解析树以便查看输入表达式的树 谢谢 在 Eclipse 中安装 Antlr4Ide 插件后 窗口 gt 显示视图 gt
  • 从 Fiori 列表报告导航到标准应用程序(例如热点)?

    我已经根据之前创建的 CDS 视图创建了列表报告 Fiori 应用程序 是否有可能在现有和 或附加 CDS 视图中使用一些注释来创建供应商编号上的热点智能字段 IE 当我点击它时 它会将我导航到该供应商的标准 业务合作伙伴 应用程序 如果这
  • 代码优先迁移过程:我缺少哪一部分?

    我的步骤 1 使用查询在 SSMS 中创建我的数据库 Execute in SQL Server Management Studio prior to building data model s CREATE DATABASE snaked
  • Accumulo、zookeeper hadoop CENTOS 6 的安装说明、下载和版本

    我希望获得有关 Accumulo zookeeper hadoop 安装说明 下载和 CENTOS 6 版本的指导 Thanks Chris 您可以通过cloudera manager版本5进行安装 我最近使用相同的方式安装了accumul
  • GDB - 如何打破“有些东西被写入cout”?

    我想设置一个断点 每次写入内容时都会触发stdout通过cout流 但我无法找到该断点的可能位置 我怎样才能在 gdb 中做到这一点 这是一种依赖于平台的方式 如果您在 x86 64 上并使用 gcc 进行构建 则写入 std cout 会
  • 多个已排序数组的交集

    From this https stackoverflow com questions 2400157 the intersection of two sorted arrays 我们知道解决两个排序数组的交集的方法 那么如何获取多个已排序
  • Razor 中枚举下拉列表的显示名称

    如何在 Razor 的下拉列表中显示枚举的自定义名称 我当前的代码是 Html DropDownListFor model gt model ExpiryStage new SelectList Enum GetValues typeof
  • 制作 CSS 精灵的工具? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在android项目中添加“jfeinstein10 / SlidingMenu”的确切过程

    我对android完全陌生 我正在尝试实现Sliding Menu having ListView with Swipe Gesture 通过一些搜索我发现https github com jfeinstein10 SlidingMenu
  • 图像增强使性能变得更差[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在研究一个图像分割项目 并一直在尝试采用图像增强技术来增加训练集的大小 起初 我只是尝试使用水平翻转将图像尺寸放大一倍 但我发现性
  • 在php中的共享主机上创建并导入mysql数据库

    我正在尝试编写 php 脚本 连接到 mysql 创建数据库 创建用户和密码 将用户添加到数据库 将准备好的sql文件导入数据库 问题是它将位于共享主机上 我正在努力使其通用并与不同的主机一起使用 我猜数据库和 db 用户将在共享主机上以我
  • Apache 2.4 需要 ip 不起作用

    尝试从旧的允许 拒绝 顺序语法转换为新语法以保护 WordPress 管理部分 但我无法让它识别我的 IP 这就是我的 htaccess文件包含在 wp admin folder ErrorDocument 401 default Erro