我当前在我的Apache服务器上遇到编码斜杠的问题。网址结构如下:
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是否存在问题,并且干净的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