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

问题[encoding](server)

Martin Hope
c0D3l0g1c
Asked: 2022-01-03 22:05:58 +0800 CST

Ubuntu配置Postfix邮件服务器编码支持IDN(国际化域名)

  • 0

据我了解, Ubuntu上的默认邮件服务器是Postfix。

我在我的 Ubuntu 安装上安装了Virtualmin和Webmin 。我试图弄清楚在哪里配置编码以发送和接收电子邮件以处理电子邮件地址中的IDN。

我在某处读到,您可以通过将Postfix 上的编码更改为SMTPUTF8或IDNA编码来使其工作。可能吗?如果是这样,我该如何更改此配置?

IDN 域名示例:日本语.idn.icann.org。

注意:域名中使用的特殊字符...浏览器有内置的支持来处理这个问题。我想为发送和接收电子邮件的电子邮件地址实现类似的功能。

ubuntu email postfix encoding virtualmin
  • 2 个回答
  • 137 Views
Martin Hope
buhtz
Asked: 2020-11-23 03:26:38 +0800 CST

使用 Windows10-NFS-client 和 Linux-NFS-server 对文件名进行类 Unicode 编码

  • 1

问题

Windows10 Pro的NFS-Client默认挂载一个NFS-share lang=ansi。这会导致使用带有变音符号或亚洲字符(例如汉字、平假名、片假名等)的文件名出现问题。

有关我的设置的详细信息

服务器是Debian GNU/Linux 10.6 (buster)。该服务器支持 NFS 版本从 3 到 4.2(禁用 2):

$ sudo cat /proc/fs/nfsd/versions
-2 +3 +4 +4.1 +4.2

客户是Windows10-Pro build 19041. 我不知道客户端使用哪个 NFS 协议版本。这是挂载点的选项。

UID=-2, GID=-2
rsize=131072, wsize=131072
mount=soft, timeout=0.8
retry=1, locking=yes
fileaccess=755, lang=ANSI
casesensitive=no
s=sys

我知道还有其他选择lang=。

euc-jp: Japanese
euc-tw: Chinese
euc-kr: Korean
shift-jis: Japanese
Big5: Chinese
Ksc5601: Korean
Gb2312-80: Simplified Chinese
Ansi: ANSI-encoded

但它们中没有一个对我有用。

有没有可能的解决方案?

windows nfs encoding
  • 1 个回答
  • 1098 Views
Martin Hope
noway
Asked: 2020-10-05 02:48:14 +0800 CST

将文件名中的 MacCyrillic 编码转换为 NTFS 文件系统上的 IBM866

  • 0

通过 samba 将文件从 MacOS 系统复制到 Windows 共享后,我得到的文件名如下:

Сђ•вл
К†в†ЂЃ¶≠л• Ђ®бвл.pdf
П†бѓЃав.doc

通常它们应该看起来像:

Сметы
Каталожные листы.pdf
Паспорт.doc

在某些情况下,我还在名称末尾得到 U+F028 符号:

Новые

有没有办法在 Windows 机器上自动确定和转换此类文件?

file-transfer encoding
  • 1 个回答
  • 125 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
hummingbirdofwar
Asked: 2020-02-08 03:49:46 +0800 CST

用无效的文件名重命名文件

  • 1

我在 Linux 机器上有大量使用无效文件名的文件。我尝试使用“detox”实用程序,以及 convmv 和 recode,但它们一直因错误而失败
recode: fopen (Entw�rfe): Invalid argument

即使是简单的 ls -la 也会产生:

ls: cannot access 'Entw'$'\374''rfe': Invalid argument  
-????????? ? ?       ?    ?            ? 'Entw'$'\374''rfe'

字符应该是变音符号“ü”

linux command-line-interface encoding
  • 1 个回答
  • 174 Views
Martin Hope
Sandeep Koparde
Asked: 2020-02-01 01:39:16 +0800 CST

如何在 URL 参数中的 HTTP 基本身份验证密码中传递问号 (?)?

  • 4

我正在自动化一个需要 HTTP 基本身份验证的网站。

在大多数情况下,此链接中给出的建议就像一个魅力:

您可以在 URL 参数中传递用户/密码以进行 HTTP 基本身份验证吗?

但是,有些用户的密码中有问号 ( ?)。请告知如何转义问号。

PS我知道@在用户名中可以转义为%40.

url .htaccess selenium encoding
  • 1 个回答
  • 4317 Views
Martin Hope
Byakugan
Asked: 2016-07-27 03:12:09 +0800 CST

尝试运行时如何处理 bash 错误?

  • -3

想象一个具有标准 bash linux 脚本(在 SUSE linux 上运行)的脚本。像这样:

#!/bin/bash
#version=1.0
#Some other text
command
#-------Comment

Changeversion=2.0
...
...

有什么方法可以自动处理错误或至少说一条自定义消息?例如,我将尝试运行脚本,但它说:

-bash: ./filename.sh: Keine Berechtigung

所以我必须为文件添加权限 - 有什么方法可以在尝试运行它时自动为该文件添加权限,或者至少添加“自定义消息”,如“do chmod +x filename.sh”?

或者,如果我有不同的编码:

/bin/bash^M: bad interpreter:

脚本本身是否可以运行此命令:

sed -i -e 's/\r$//' filename.sh

或者至少在错误信息中说出来?

linux scripting bash permissions encoding
  • 2 个回答
  • 974 Views
Martin Hope
Tom B.
Asked: 2015-04-21 05:38:44 +0800 CST

xdg-open 在 LTSP 上使用了错误的字符编码

  • 1

我正在尝试在 LTSP 系统上的本地应用程序中打开文件。但是如果路径名包含重音字符,例如é,则无法打开它,因为 URI 似乎编码错误。

问题似乎在于 gvfs-open 发送文件 URI 的方式:

gvfs-open /home/user/testé/test.mov
VLC is unable to open the MRL 'file:///home/user/test303251/test.mov'.

从应用程序本身打开相同的文件(使用 File > Open..)不会产生任何问题。

空格和逗号的编码方式似乎不同,使用 %20,不会产生任何问题。

gvfs-open /home/user/this is testé/test.mov
VLC is unable to open the MRL 'file:///home/user/this%20is%20test303251/test.mov'.

知道如何解决这个问题吗?

encoding
  • 1 个回答
  • 137 Views
Martin Hope
Alex
Asked: 2010-04-20 06:05:26 +0800 CST

PHP & IIS 6 编码问题

  • 1

服务器正在运行带有 IIS 6.0.3790.1830 x86 (iis.dll) 的 Windows 2003。我的数据库服务器是 Microsoft SQL Server 2000。我的 PHP 版本是 5.3。

原始应用程序托管在其上,appserv1其数据库位于dbserv1. 一切正常,一切正常,运行良好。

需要将相同的应用程序(不同的模块)放在另一台服务器上,用于其他用途,所以我复制了数据库dbserv2,配置appserv2为托管应用程序,所以我实现了 2 个几乎相同的副本。两者都dbserv1使用dbserv2相同的编码,两者appserv1都appserv2在 IIS6 上使用相同的 PHP 配置。我也尽力在 IIS 中设置相同的设置。我还确保在 HTTP 标头和带有 http-equiv 的元标记中传递编码信息。两个应用程序都使用 utf-8。

问题是应用程序的副本无法在浏览器中正常显示非 ASCII 字符,即使浏览器正确检测到页面的 UTF-8 编码。首先我认为这是一个数据库问题,因为 MSSQL 2000 不支持 UTF-8,而是使用 UCS-2,但是当我将应用程序重定向appserv2到使用数据库时dbserv1,它具有相同的编码问题。

这就是为什么我要问我可以通过什么方式使它工作。

谢谢你的阅读。

php iis encoding
  • 1 个回答
  • 1034 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

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