我有一个非英语语言的 drupal (php) 网站,其中有如下链接:
http://example.com/forum/ಕನ್ನಡ-ಸ0ಶೋಧಕರಿಗೆ-ನೆರವಾಗುವ-ಅದ್ಬುತ-ವೆಬ್-ಸೈಟ್
当用户从浏览器复制此链接时,它的复制方式与复制时不同:
http://example/forum/%E0%B2%95%E0%B2%A8%E0%B3%8D%E0%B2%A8%E0%B2%A1%E2%80%8C-%E0%B2%B80%E0%B2%B6%E0%B3%8B%E0%B2%A7%E0%B2%95%E0%B2%B0%E0%B2%BF%E0%B2%97%E0%B3%86-%E0%B2%A8%E0%B3%86%E0%B2%B0%E0%B2%B5%E0%B2%BE%E0%B2%97%E0%B3%81%E0%B2%B5%E2%80%8C-%E0%B2%85%E0%B2%A6%E0%B3%8D%E0%B2%AC%E0%B3%81%E0%B2%A4%E2%80%8C-%E0%B2%B5%E0%B3%86%E0%B2%AC%E0%B3%8D-%E0%B2%B8%E0%B3%88%E0%B2%9F%E0%B3%8D
由于在服务器上请求此 url,它会抛出错误消息“文件名太长”。有什么方法可以在 php 端或 apache2 端克服这个问题吗?
所以,真的不确定这是否能解决问题,但我在这里发现了类似的问题,您可能需要检查一下:https://serverfault.com/questions/120397/max-length-of-url-257 -mod 重写的字符
问题是 apache 首先尝试在该位置加载文件,这是一个非法的长文件名。你的应用程序试图用它做什么并不重要,因为在 apache 返回错误之前它永远没有机会看到它。
有关详细信息,请参阅原始答案中的链接:https://serverfault.com/questions/120397/max-length-of-url-257-characters-for-mod-rewrite
确切的解决方案取决于您尝试用它做什么,但该链接有一些建议。