AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 898665
Accepted
Jacksonkr
Jacksonkr
Asked: 2018-02-24 15:07:43 +0800 CST2018-02-24 15:07:43 +0800 CST 2018-02-24 15:07:43 +0800 CST

htaccess 允许特定路径

  • 772

目前 htaccess 拒绝所有用户。我只想让所有用户都可以访问来自 wordpress 的 JSON 提要

从 htaccess 文件的位置,提要 url 是:

./row/wordpress/wp-json/wp/v2/screen

问题

据我了解,这是由重写规则创建的“虚拟”网址。由于它不是一个实际的文件,而只是一个端点,我如何允许任何用户访问它?

当前尝试

这是我当前的尝试,它阻止所有没有密码的用户。我的Files节点什么都不做。

// root folder's .htaccess

AuthUserFile /var/www/domains/dev/.htpasswd
AuthType Basic
AuthName "Password Required"
Require user SecretUser
Order Deny,Allow
Deny from All

<Files "row/wordpress/wp-json/wp/v2/screen">
    Allow from all
</Files>

Satisfy Any       

问题

我怎样才能让./row/wordpress/wp-json/wp/v2/screen我的所有访问者都可以看到的虚拟路径?

** 编辑 **

从那以后我都试过了

<Directory row/wordpress/wp-json/v2/>
    Allow from All
</Directory>

<Location row/wordpress/wp-json/v2/>
    Allow from All
</Location>

没有成功,他们都导致了 501

.htaccess
  • 2 2 个回答
  • 7762 Views

2 个回答

  • Voted
  1. PeterA
    2018-12-19T07:44:29+08:002018-12-19T07:44:29+08:00

    这里有两种不同的方法来允许单个 url(无论它是否引用物理文件)绕过基本密码验证:

    选项 1:通过密码保护允许单个 URL:

    AuthType Basic
    AuthName "Password Required"
    AuthUserFile /var/www/domains/dev/.htpasswd
    Require expr %{REQUEST_URI} == '/row/wordpress/wp-json/wp/v2/screen'
    Require user SecretUser
    

    选项 2:对与特定 URL 不匹配的所有请求应用密码保护(此选项需要 Apache 2.4):

    <If "%{REQUEST_URI} != '/row/wordpress/wp-json/wp/v2/screen'">
        AuthType Basic
        AuthName "Password Required"
        AuthUserFile /var/www/domains/dev/.htpasswd
        Require user SecretUser
    </If>
    
    • 1
  2. Best Answer
    Jacksonkr
    2019-07-21T10:23:49+08:002019-07-21T10:23:49+08:00

    由于虚拟路径(由 wordpress 创建)的性质,我不得不THE_REQUEST改用:

    <If "%{THE_REQUEST} =~ m#^GET /sites/dawna/wordpress/wp-json/#">
            Allow from All
            Satisfy Any
    </If>
    

    wordpress 重定向使用wordpress/index.php所以使用REQUEST_URI不工作,因为 uri 总是/path/to/wordpress/index.php使 my if 语句无用。

    笔记

    如果您需要支持 PUT 或其他,则必须将其添加进去。[A-Z]{3}或者[A-Z]{3-6}后者将对所有内容开放。

    • 1

相关问题

  • apache重写以将文件夹分配给域

  • Apache conf 或 .htaccess 规则将 404 重定向到特定文件类型的另一个位置

  • 如何让 Apache2 重定向到子目录

  • .htaccess - 删除所有 cookie

  • 我的 .htaccess 文件是什么意思?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve