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

问题[utf-8](server)

Martin Hope
lepe
Asked: 2021-05-23 01:08:28 +0800 CST

如何在 spamassassin 中匹配日语?

  • 5

我住在日本。最近有很多来自中国的垃圾邮件,都是用中文写的。由于 spamassassin 不包含针对中文的规则,因此大多数这些电子邮件都以低分通过。

我想确定电子邮件何时仅用中文编写。由于大多数日语汉字都包含在中文范围内(U+E400 到 U+E9FF),因此识别日语的一种方法是查看平假名(U+3040 到 U+309F)和片假名(U+30A0 到 U +30FF)。如果它包含平假名或片假名,我可以安全地假设是日语,否则是中文。

如果我测试单个字符,例如:あ或者ア它们正确匹配,但是当我使用范围时它不起作用。这是我们尝试过的:

body    CHINESE       /[\xe4-\xe9]/                 <--- this form seems to work fine
body    JAPANESE      /[\x30-\x31]/                 <--- not sure what is actually matching
body    JAPANESE      /(あ|え)/                      <---- this matches single character just fine
body    JAPANESE      /[あ-ん]/                      <--- doesn't work
body    JAPANESE      /[U+3040-U+30FF]/              <--- doesn't work
body    JAPANESE      /[\xe3\x81\x81-\xe3\x82\x96]/  <--- doesn't work
body    JAPANESE      /[\x{3040}-\x{30FF}]/          <--- doesn't work

我真的不知道我在做什么了。我知道上面的一些没有意义......

指定这些范围的正确方法是什么?

spam spamassassin utf-8
  • 1 个回答
  • 401 Views
Martin Hope
Jules Kerssemakers
Asked: 2020-10-02 06:50:51 +0800 CST

apache RewriteRule 的语法以匹配 % 编码的 URL?(修复字符编码问题;windows-1252 <=> utf-8)

  • 5

我托管了一个 URL 中包含“”的网页,与托管静态文件project²的磁盘目录相匹配。project²

基于 java 的客户端使用此页面从 URL(生物信息学软件IGV)加载数据。我的页面以http://localhost:60151/load?file=http://example.org/project²/some/data/file.bam. 在浏览器中单击这些链接将导致 IGV 客户端(在 localhost 上运行)向GET http://example.org/project²/some/data/file.bam我的服务器请求。

✅ Linux/Mac 上的 IGV 通过将此 URL 请求为 UTF-8 编码²=来响应%C2%B2,一切正常。
❌我新获得的Win-10用户的客户端请求²= %B2(windows-1252编码),导致404-not-found。

在尝试了几十件事之后,我对如何帮助这个用户束手无策。

我的印象是我应该能够在服务器端动态重写错误编码的 URL,以便它们最终仍然提供所需的数据,但我不知道使规则模式匹配的神奇字符组合转义字符。


我已经尝试过的事情

  • 仔细检查 404 不是网络问题;我看到GET %B2我ssl_access_log的 with404作为返回的状态码,所以它确实是服务器在做它。
  • “正确”方式:在将 URL 提供给客户端之前对 URL 进行 UrlEncoding。PerlURI::Encode encode_uri将²变成%C3%82%C2%B2(显然ò?)不知何故更错误?
  • 三重检查提供加载 URL 的网页是否为 utf-8
    • 它提供标题Content-Type: text/html; charset=UTF-8
    • 设置AddDefaultCharset UTF-8在httpd.conf
    • 似乎编码信息没有从 webbrowser API-link-click 传输到 Java 程序中
  • 通过符号链接将目录“加倍”projectª -> project²并且project%B2 -> project² (ª是 UTF8 匹配%B2) 编辑:ª 没有任何关系;不知道我从哪里得到的
  • 试图以mod_rewrite几种不同的方式将“坏”的 URL 变成好的 URL,但似乎都没有:
RewriteEngine on
# RewriteRule Pattern Substitution [flags]
RewriteRule (.*)project%B2/(.*) $1project²/$2 [NE] # encoded 'bad' request, unencoded redirect
RewriteRule (.*)²(.*) $1%C2%B2$2 [B,NE]            # config file is utf-8 encoded, so this is senseless.      
RewriteRule (.*)%B2(.*) $12$2 [B,NE]               # doesn't match?        
RewriteRule (.*)TZZT(.*) $1test$2                  # works, so RewriteEngine is working

RewriteRule和RewriteRuleFlags文档也不能帮助我理解我应该如何编码Pattern-part 以便它可以工作:-(


类似的问题在这里

  • Apache .htaccess 能否将编码 URI 中的百分比编码从 Win-1252 转换为 UTF-8?-> 外部编码程序rewritemap似乎有点矫枉过正,因为它实际上只有一个文件夹project²,所以我的范围更小。
  • 在 NGinX 中将ASCII 百分比编码的位置重写为其 UTF-8 编码的等效相同问题,指向上述 Apache 问题。
mod-rewrite utf-8 apache-2.4 encoding
  • 2 个回答
  • 2381 Views
Martin Hope
user46688
Asked: 2017-01-09 13:45:43 +0800 CST

htaccess 重定向更改 HTML 响应的编码

  • 2

我已将 Apache 2.4 服务器设置为AddDefaultCharset utf-8httpd.conf 并且我的.htaccess文件将所有非 www 重定向http到https://www.example.com

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com$ [OR]
RewriteCond %{HTTPS} !on
RewriteRule ^(.*)$ https//www.example.com/$1 [R=301,L,NE]

如果我查看 HTTP 响应标头,则只有发送到的流量会https://www.example.com生成 UTF-8 响应。非 www 和 http 流量以 ISO-8859-1 字符集响应。

任何人都知道如何确保所有 URL 重定向 HTTP 响应都采用 UTF-8 格式?

web-server .htaccess utf-8
  • 2 个回答
  • 1620 Views
Martin Hope
ChiperSoft
Asked: 2012-06-11 15:09:31 +0800 CST

在 rsync 或 afpd 中将 UTF-8 NFD 文件名转换为 UTF-8 NFC

  • 27

我有一个运行 FreeNAS 8 的家庭文件服务器。几天前,我使用 rsync 从 Mac 上传我的整个 iTunes 库,这样我就可以通过网络加载我的库,而不是从一个慢速 USB 驱动器上加载。这主要是有效的,iTunes 现在运行得更好,但是我在访问任何包含非 ascii 字符的歌曲时遇到了问题(我在加载 Queensrÿche 曲目时首先注意到了这个问题)。这些文件会显示在 Finder 中,但任何访问它们的尝试都会使它们消失,直到我重新连接到服务器。

经过一些研究,我发现这是因为 OSX 使用与 Linux 不同的 UTF 字符顺序。OSX 文件系统使用 Unicode Normalization Form D (NFD),而 linux 使用 Form C (NFC)。Rsync 在执行从我的 mac 到服务器的复制时不会转换这些形式,现在当 iTunes 尝试通过网络访问具有特殊字符的文件时,服务器上的文件编码错误并且 afpd 报告它们没有不存在。

解决此问题的最佳方法是什么?是否可以让rsync在将基础库上传到服务器的同时进行unicode转换?我可以将 afpd 配置为传输/接收 NFD 格式的文件名吗?有没有简单的解决方案来更改服务器上的文件名?我找到了一些关于名为 convmv 的程序的资料,但我不知道我是否可以在 FreeNAS 上运行它。

mac-osx rsync afp utf-8 truenas
  • 5 个回答
  • 17486 Views
Martin Hope
Moak
Asked: 2010-04-08 23:08:27 +0800 CST

用 Mod_Rewrite 使用汉字

  • 1

我正在尝试使用汉字创建规则

#RewriteRule ^zh(.*) /中文版$1 [L,R=301]

当我将文件更改为 UTF-8 时创建错误 500

#RewriteRule ^zh(.*) /%E4%B8%AD%E6%96%87%E7%89%88$1 [L,R=301]

重定向到 /%25E4%25B8%25AD%25E6%2596%2587%25E7%2589%2588(基本上用 %25 替换 %)

有人熟悉这个问题吗?

mod-rewrite utf-8 encoding unicode
  • 2 个回答
  • 2710 Views
Martin Hope
Marki
Asked: 2010-02-18 18:37:02 +0800 CST

sql和web编码问题

  • 0

伙计们,我相信我遇到了编码问题。

我已经从 phpBB2 升级到 phpBB3。

旧数据库在 latin1 中,新数据库使用 utf8 编码。

在升级过程中,DB 的某些行仅被部分读取到新版本中,因为结果出现了奇怪的字符。

当我使用 PHP 的 mb_convert_encoding() 函数将这些字符串转换为 UTF8 时,它们最终会变成 0x0093,即它们一定是某种双引号。

即使进行了这种转换,它们仍然在浏览器中显示为 0x0093(当浏览器不知道要显示什么时,它们中带有 0093 的方块)。

有人可以在这里解释这个问题吗?

我有点困惑,担心我看不到所有需要工作才能获得正确编码和正确显示的依赖项......

mysql php utf-8 encoding
  • 1 个回答
  • 180 Views
Martin Hope
Weiwei
Asked: 2009-09-01 19:03:11 +0800 CST

将具有默认字符集 utf8 的 mysql 客户端和 mysql-server 安装到 Fedora 11

  • 0

我只有 utf8 字符可以放入我的数据库,所以数据库中的所有内容都是 utf8。

我试过'yum install mysql mysql-server -with-charset=utf8' 但它不正确。

如果我使用“yum install mysql mysql-server”安装,我得到了默认的 latin1 字符集。

非常感谢任何建议和帮助!

mysql fedora utf-8
  • 1 个回答
  • 3003 Views
Martin Hope
Amandasaurus
Asked: 2009-06-27 06:57:09 +0800 CST

确保 MySQL 数据库完全采用 UTF8 的最佳方法

  • 8

在 UTF8 和非 UTF8 字符串出现一些问题之后,我们正在对 UTF8 进行标准化。我需要做的一件事是检查 MySQL 数据库中的所有内容是否都是 UTF8 格式?我需要检查什么?

  • 服务器默认字符集
  • 每个数据库的默认字符集
  • 每个文本列都有一个字符集吗?我该如何检查?

我正在考虑将所有这些都放在一个 nagios 插件中,以检查所有内容是否都在 UTF8 中。建议?

mysql database charset utf-8 unicode
  • 5 个回答
  • 5397 Views
Martin Hope
Whatsit
Asked: 2009-05-29 07:47:34 +0800 CST

如何确定终端是否支持 UTF-8

  • 24

我正在为 CentOs 5 上的 perl 设置 CPAN 模块,其中一个问题是“您的终端是否支持 UTF-8?” (转述)。我怎么知道?

terminal utf-8
  • 7 个回答
  • 30075 Views
Martin Hope
sal
Asked: 2009-05-22 13:46:58 +0800 CST

UTF-8 和 !# shell 脚本

  • 7

有没有办法在 Linux(red hat 和 ubuntu)上配置 bash 以允许 shell 脚本以 UTF-8 编码?

我找不到一种简单的方法来改变一点点,让整个系统只使用 UTF-8 文件而不必担心编码。

unix bash configuration utf-8
  • 3 个回答
  • 6203 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