gpt4 book ai didi

javascript - .htaccess 受密码保护的网站在 Ipad 上重新加载每个页面时都需要密码

转载 作者:太空狗 更新时间:2023-10-29 15:53:59 24 4
gpt4 key购买 nike

我使用 .htaccess 来保护带有密码的网站。

如果我在该网站上使用 html5 音频元素,我的 Ipad 在每次重新加载时都需要网站密码,尽管它已保存在浏览器中。

仅适用于 iPad。未root,所有原始ios。在 Ipad 上使用 Chrome 和 Safari 进行测试,始终相同。

如果页面上没有音频元素,则不需要密码。

这不会发生在 Android 平板电脑或 Windows 中的 Firefox 上。

我可以编写什么程序来防止 Ipad 询问密码?

我使用以下 code来自这个网站。

<!DOCTYPE HTML>
<html>
<head>
<title>Audio</title>
</head>
<body>

<script>
function play(){
var audio = document.getElementById("audio");
audio.play();
}
</script>

<input type="button" value="PLAY" onclick="play()">
<audio id="audio" src="./207.wav"></audio>
</body>
</html>

.htaccess:

AuthType Basic
AuthName name123
AuthUserFile /somepath/.htpasswd
require valid-user
SetEnv no-gzip
ExpiresActive On
ExpiresDefault "access plus 1 seconds"
ExpiresByType text/html "access plus 1 seconds"
AddDefaultCharset UTF-8

最佳答案

这是一个very old problem . Safari 浏览器在自动 执行某些操作时禁用发送身份验证参数 - redirect with 301-302 http codes或加载媒体文件。看起来这是一个安全问题 - Safari 不允许访问自动加载的文件。

让我们用服务器日志检查一下(我在页面上添加了一张图片):

GET/t/i.jpg HTTP/1.0"200 图像加载得很好。

GET/t/207.wav HTTP/1.0"401 音频未加载,显示提示。

所以它是强制 auth 提示显示的音频文件。有一个 workaround , 但不够安全。

更新。以下代码显示第一次访问(img 标记)207.wav 的 200 响应和第二次访问(audio 标记)的 401。

<img src="./207.wav" width=200><br>
<audio id="audio" src="./207.wav"></audio>

217.118.81.250 - ivan [11/Feb/2017:20:32:13 +0300] "GET /t/207.wav HTTP/1.0" 200 ... Safari/602.1"
217.118.81.250 - - [11/Feb/2017:20:32:15 +0300] "GET /t/207.wav HTTP/1.0" 401 ... Safari/602.1"

关于javascript - .htaccess 受密码保护的网站在 Ipad 上重新加载每个页面时都需要密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41427967/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com