小编COi*_*Oil的帖子

Apache 日志中有很多 400 错误

我们很难在我们的网站上调试 400 个错误。我们有很多这样的错误:

10.0.0.1 - - [08/Oct/2018:14:28:07 +0200] 
"GET /les-news/palmares/detail/article/la-lettre-de-motivation-ideale-pour-une-demande-de-stage-5224/ 
HTTP/1.1" 400 131844 
"https://www.google.com/" 
"Mozilla/5.0 (Linux; Android 7.0; TECNO K7 Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.91 Mobile Safari/537.36"
Run Code Online (Sandbox Code Playgroud)

一位用户通过电子邮件报告了这个问题,并通过在他的浏览器中重置它的 cookie 来修复它,其他重置 cookie 是不够的(但我们不能确定它是否正确完成)。

该平台非常复杂,由F5 负载均衡器处理,具体取决于请求转发到不同服务器的路径。

我首先想要的是能够重现错误,因为在访问 URL 时,我们没有任何 URL 并且一切正常。

我们注意到大部分错误来自 Android/Chrome:大约 85% 的所有 400 个错误。

这是一个完整的日志:

timestamp   October 8th 2018, 16:26:52.000
version     1
 _id        BmQSVGYB5vF-Dw_g1gVi
 _index     f5_access-2018.10.08
 _score     - 
t _type     doc
t agent     Mozilla/5.0 (Linux; Android 8.1.0; MI 8 Build/OPM1.171019.026) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.91 Mobile …
Run Code Online (Sandbox Code Playgroud)

logging 400 apache-2.4

7
推荐指数
1
解决办法
3062
查看次数

带有包含空格的 URL 的 Apache RewriteMap 不起作用

我实际上是RewriteMap在我的 vhost 中使用一个指令来重定向 800 个 URL 的列表。它安静地工作:

RewriteEngine On
RewriteMap redirects dbm=db:/data/apps/project/current/configuration/etc/httpd/conf/redirects.db
RewriteCond ${redirects:$1} !=""
RewriteRule ^(.*)$ ${redirects:$1} [redirect=permanent,last]
Run Code Online (Sandbox Code Playgroud)

我使用redirect.txt包含映射的文件。然后将其转换为db文件:

httxt2dbm -f db -i /data/apps/project/current/configuration/etc/httpd/conf/redirects.txt -o /data/apps/project/current/configuration/etc/httpd/conf/redirects.db
Run Code Online (Sandbox Code Playgroud)

例如对于这种网址,就可以了:

/associations/old_index.php /
Run Code Online (Sandbox Code Playgroud)

但是当 URL 包含空格时它不起作用:(我想它与其他特殊字符相同)

/Universités%20direct   /
Run Code Online (Sandbox Code Playgroud)

这个案子怎么处理?

mod-rewrite redirect virtualhost apache2

4
推荐指数
1
解决办法
3348
查看次数

使用 Minio 提供 HTTPS 图像

我跟着这个文档,但无法使我的图像通过 HTTPS 提供服务。

我有以下/etc/default/minio配置文件:

MINIO_ACCESS_KEY="admin"
MINIO_VOLUMES="/usr/local/share/minio/"
MINIO_OPTS="-C /etc/minio --address vps.ovh.net:443 --console-address :9001"
MINIO_SECRET_KEY="secret"
Run Code Online (Sandbox Code Playgroud)

如果我指定另一个端口(例如 9000 而不是 443),这次它可以工作,但该文件是通过 HTTP 提供的:

http://vps.ovh.net:9000/images/product/e53b9fde-4df1-4e54-bef4-76cd8c97cdb2.jpg

我已经在以下位置生成了证书/etc/minio

pwd
/etc/minio/certs
ll
rw------- 1 minio-user minio-user 1704 Feb  3 11:05 private.key
-rw-r--r-- 1 minio-user minio-user 5522 Feb  3 11:05 public.crt
Run Code Online (Sandbox Code Playgroud)

有什么想法或建议吗?

storage https amazon-s3 minio

2
推荐指数
1
解决办法
520
查看次数