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 / 问题

问题[.htaccess](server)

Martin Hope
LWC
Asked: 2024-12-01 17:16:08 +0800 CST

是否可以通过基本身份验证在关闭浏览器时记住登录信息?

  • 7

每次用户关闭浏览器时,基本身份验证似乎都会忘记登录。除非用户强行删除 cookie 等,否则是否可以让它记住它(例如至少 30 天)?

我尝试添加以下内容但没有什么变化:

  RewriteEngine On
  RewriteCond %{HTTP_COOKIE} remember_me=([^;]+) [NC]
  RewriteRule ^ - [E=REMOTE_USER:%1]

  Header always set Set-Cookie "remember_me=%{REMOTE_USER}e; Path=/; Max-Age=2592000; HttpOnly; Secure" env=REMOTE_USER
.htaccess
  • 2 个回答
  • 248 Views
Martin Hope
klewis
Asked: 2024-03-29 00:59:20 +0800 CST

如何使用 htaccess 匹配文件名的开头

  • 8

我正在尝试修改.htaccess特定目录中的文件。如果网络用户尝试在此目录中查找任何可能像以下选项那样命名的文件,我希望它们被重定向回主页。以下是一些文件名示例。

  • /cat_1234.pdf
  • /cat_blahbla.doc
  • /cat_$9989&428.jpg
  • /cat_-309bn-020n.webp

...我怎样才能告诉我RewriteCond留意这些模式?这是我最好的尝试,我认为它会起作用,但事实并非如此......

<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_URI} ^cat_([0-9a-zA-Z_]+)\.(pdf|doc|jpg|webp) [NC]
RewriteRule . /index.php [R=302,L]
</IfModule>

我缺少什么?

.htaccess
  • 1 个回答
  • 180 Views
Martin Hope
KBM
Asked: 2024-02-23 02:39:10 +0800 CST

在子目录中创建 .htaccess 会导致更高级别 .htaccess 中的重写规则停止工作

  • 6

很抱歉,如果之前已经问过/回答过这个问题,但我无法找到这个特定问题的答案。

如果我使用简单的重写规则创建 .htaccess 文件,则该规则有效。如果我在子目录中使用它自己的重写配置创建另一个 .htaccess 文件,则顶层的主 .htaccess 文件将停止被读取。我什至不需要创建任何规则。只需打开子目录上的重写引擎就会导致更高级别的重写停止工作。

我创建了一组包含两个文本文件的子目录:

[root@apachetest html]# cat test/1/test.txt
1

[root@apachetest html]# cat test/2/test.txt
2

以及一个 .htaccess 文件将 test/1/test.txt 重写为 test/2/test.txt

[root@apachetest html]# cat test/.htaccess 
RewriteEngine on
RewriteRule 1/test.txt 2/test.txt [L]

这按预期工作。如果我请求 1/test.txt 我会得到 2/test.txt

[root@apachetest html]# curl localhost/test/1/test.txt
2

但是,如果我在 test/1/ 子目录中创建另一个 .htaccess 文件,则 test/.htaccess 文件将停止工作。

[root@apachetest html]# echo "RewriteEngine On" > test/1/.htaccess
[root@apachetest html]# curl localhost/test/1/test.txt
1

我已经尝试了所有的 RewriteOptions;/test/.htaccess 和 /test/1/.htaccess 中的 Inherit、InheritBefore、InheritDown、InheritDownBefore 和 IgnoreInherit 但如果 /test/1/.htaccess,我无法让 /test/.htaccess RewriteRule 工作里面有任何重写配置。

我需要能够将 RewriteRules 放入子目录中,而不影响顶级目录中的 RewriteRules。谁能告诉我我错过了什么?

.htaccess
  • 1 个回答
  • 24 Views
Martin Hope
alancc
Asked: 2023-09-13 00:27:11 +0800 CST

如何禁用特定文件夹的 .htaccess 重定向

  • 6

我编写以下.htaccess规则将所有 URL 重定向www.a.com到www.b.com:

RewriteEngine on
RewriteCond %{http_host} ^www.a.com [NC,OR]
RewriteCond %{http_host} ^a.com [NC]
RewriteRule ^(.*)$ https://www.b.com/myfolder/ [R=301,NC,L]

现在 的子目录下有一个文件a.com,如下:

www.a.com/.well-known/acme-challenge/#######

它用于 AutoSSL 续订。通过上述重定向,AutoSSL 将无法再找到该文件,因此更新失败。

那么,是否可以禁用下面的重定向/.well-known/acme-challenge/?

.htaccess
  • 1 个回答
  • 55 Views
Martin Hope
Michel Zúñiga
Asked: 2023-08-03 23:06:29 +0800 CST

htaccess 在特定 url 上使用特殊字符进行重定向不起作用

  • 6

我需要一些帮助来创建重定向,我正在尝试将所有内容替换为-,+但两者都是特殊字符,并且仅当 URL 包含 时才执行此操作?s=。

这是一个例子

example.com/?s=i-need-to-rewrite-this-url
example.com/?s=i+need+to+rewrite+this+url

这就是我所拥有的,我已经尝试使用()或""但没有工作

RewriteEngine on
RewriteRule ^?s=(.*)\-(.*)$ ?s=$1\+$2 [L,R=301]

我很感激任何帮助。谢谢。

.htaccess
  • 1 个回答
  • 21 Views
Martin Hope
Life after Guest
Asked: 2023-08-02 02:07:03 +0800 CST

编辑 .htaccess 文件以使文件可访问

  • 6

我试图让一个 WordPress 插件工作,经过几个小时的调试、试验、错误和祈祷古希腊诸神后,我发现该插件无法工作,因为服务器无法访问特定文件。

该网站托管在基本的共享托管环境中,因此唯一可以配置的就是文件.htaccess。该文件充满了规则,但我最终找到了导致插件问题的规则:

RewriteRule ^wp-content/(?!themes/.*/core/css/custom\.css\.php$)(.*)\.php$ [R=404,L]

当我注释掉这条规则后,插件开始正常工作。

现在,我不是服务器或.htaccess专家,但编写此规则的人考虑到了一些安全问题,因此我想更改它,以便它仅允许我的文件工作。

我的文件路径是:

wp-content/plugins/plugin-name/public/js/service-worker-loader.js.php

你能帮助我吗?

.htaccess
  • 1 个回答
  • 32 Views
Martin Hope
traxx2012
Asked: 2023-07-05 23:00:35 +0800 CST

如果没有 RewriteRule 满足请求,.htaccess 返回错误

  • 6

我正在尝试编写一个简单的 REST API,目前正在尝试正确配置我的.htaccess文件。

我想要实现的目标如下:

  • 必须RewriteRule将请求定向到实际的 RestController
  • 捕获所有未RewriteRule在之前明确提供服务并出现 FITTING 错误的 请求
    • RewriteRule应答复针对未使用前者处理的任何文件、子目录或子目录中的文件的请求403
    • 应回答针对任何不存在的文件或子目录的请求404

到目前为止我所取得的成就是:

  • ✅ 提供不存在的文件、子目录和子目录中的文件404
  • ✅ 在没有适当的情况下提供现有文件和子目录RewriteRule 403
  • ❌ 将有效的 API 请求转发到正确的端点(在我添加最后一条403规则后它停止工作)
  • ❌403在没有适当的情况下为子目录中的现有文件提供服务RewriteRule- 例如。当我尝试访问时domain.com/subdir/existingfile.pdf,它实际上显示了我不想要的文件。

由于子目录可以动态创建,因此我希望处理 403 中的所有子目录和文件,而无需手动指定它们。

这是我目前的.htaccess:

Options -Indexes
RewriteEngine on
RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

# REST mappings
RewriteRule ^json$   RestController.php?key=json [L,nc,qsa]
RewriteRule ^file/(.*)$   RestController.php?key=file&id=$1 [L,nc,qsa]
RewriteRule ^actions$   RestController.php?key=actions&id=none [L,nc,qsa]
RewriteRule ^actions/(.*)$   RestController.php?key=actions&id=$1 [L,nc,qsa]

# catch all non-matched requests and throw 404 or 403 accordingly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ - [R=404,NC,L]
RewriteRule ^ - [R=403,NC,L]
.htaccess
  • 1 个回答
  • 39 Views
Martin Hope
Maone van Cobain
Asked: 2023-03-29 03:24:59 +0800 CST

如何使用 .htaccess 将自定义 url 旧域替换为新域

  • 6

如何用新域和新永久链接替换整个网站的所有 url?我有 5k url 可以在我的网站上替换。

例子 :

  • 当前网址: oldomain.com/2020/12/data-raid-4963.html
    替换为:sub.newdomain.com/4963-2/

  • 当前网址: olddomain.com/2019/09/data-raid-2125.html
    替换为: sub.newdomain.com/2125-2/

.htaccess
  • 1 个回答
  • 44 Views
Martin Hope
vision
Asked: 2023-03-07 18:52:29 +0800 CST

如何使用 .htaccess 根据域名重定向网页

  • 6

在服务于多个域(example.com、example.org 等)的站点上,我们希望根据域重定向页面:

https://www.example.com/page1 => https://www.example.com/page2
https://www.example.org/page1 => https://www.example.org/page3

使用 .htaccess,但以下内容:

Redirect "/page1" "https://www.example.com/page2"

将应用于两个域。如何才能做到这一点?

.htaccess
  • 1 个回答
  • 46 Views
Martin Hope
Petar Cvetic
Asked: 2023-02-08 05:10:47 +0800 CST

如何使用 .htaccess 文件重定向所有包含特定单词的页面

  • 5

我有一堆以同一个词开头的索引页面,它们都是 404,所以我想将它们全部重定向到网站的主页。服务器是 Apache,所以我想使用 .htaccess 文件。

所以我需要重定向页面(例如):

https://example.com/page-1.html

https://example.com/page-2.html

https://example.com/page-3.html

https://example.com/page-4.html

https://example.com/page-5.html

至:https: //example.com/

.htaccess
  • 1 个回答
  • 60 Views

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