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とクリーン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 に答える