-2

URLを書き換える必要があります

私の実際のURL

http://www.domain.com/page.php?catName/ArticleName....?/&ca=7&prod=44&artId=446

私はこのように書き直す必要があります

http://www.domain.com/catID-catName/proID-prodName/artID-ArticleName....?/page.html

4

1 に答える 1

3

はい、可能です。ちなみに、変更したURLには「?」が1つだけあります。URIとURLの構文を指定する[RFC][1]から、は、または(パスはオプション)コンポーネントにquery続くURLの部分です。「?」に注意してください 文字は、URLのクエリセクションの最初の文字である必要があります。http://www.example.com/pathhttp://www.example.com

RFCのセクション3.4の重要な文は次のとおりです。

文字のスラッシュ( "/")と疑問符( "?")は、クエリコンポーネント内のデータを表す場合があります。

これは、URI構文を管理するRFCの関連セクションです。

3.4 Query

The query component contains non-hierarchical data that, along with
   data in the path component (Section 3.3), serves to identify a
   resource within the scope of the URI's scheme and naming authority
   (if any).  The query component is indicated by the first question
   mark ("?") character and terminated by a number sign ("#") character
   or by the end of the URI.

      query       = *( pchar / "/" / "?" )

   The characters slash ("/") and question mark ("?") may represent data
   within the query component. Beware that some older, erroneous
   implementations may not handle such data correctly when it is used as
   the base URI for relative references (Section 5.1), apparently
   because they fail to distinguish query data from path data when
   looking for hierarchical separators.  However, as query components
   are often used to carry identifying information in the form of
   "key=value" pairs and one frequently used value is a reference to
   another URI, it is sometimes better for usability to avoid percent-
   encoding those characters.


  [1]: http://tools.ietf.org/html/rfc3986#section-3
于 2013-03-23T09:09:01.910 に答える