1

我目前在我的 Apache 服务器上遇到编码斜杠的问题。url结构如下:

www.site.com/url/http%3A%2F%2Fwww.anotherurl.com/format/xml

然后我从 Apache 收到 404 错误(我的应用程序应该处理所有错误。)

显然,该AllowEncodedSlashes On指令应该在这个地方帮助我,但它似乎没有产生任何影响。我把它放在 httpd.conf 中,如下所示:

<VirtualHost *:80>
DocumentRoot /var/www/vhosts/site.com/httpdocs
ServerName site.com

AllowEncodedSlashes On
</VirtualHost>

/etc/init.d/httpd restart然后使用命令重新启动 Apache 。

这几天我一直在尝试解决这个问题。我有人说 AllowEncodedSlashes 指令有效,有人说它有问题,应该折旧。我想知道 AllowEncodedSlashes 和 clean URL 一起工作是否存在问题?

无论如何,感谢所有帮助。提前致谢。

4

2 回答 2

0

似乎是 Apache 的一个错误:https ://issues.apache.org/bugzilla/show_bug.cgi?id=35256

于 2010-12-12T21:35:28.573 回答
0

对于这种类型的问题,您可以使用编码和解码 URL。

  var uri = "https://w3schools.com/http%3A%2F%2Fwww.anotherurl.com/format/xml";
  var uri_enc = encodeURIComponent(uri);
  var uri_dec = decodeURIComponent(uri_enc);


After encode-
Encoded URI: https%3A%2F%2Fw3schools.com%2Fhttp%253A%252F%252Fwww.anotherurl.com%2Fformat%2Fxml

After Decode-
Decoded URI: https://w3schools.com/http%3A%2F%2Fwww.anotherurl.com/format/xml
于 2019-12-13T17:19:53.773 回答