0

stackoverflow の mod_rewrite に関するいくつかのトピックを見つけましたが、どれも私の問題を解決しませんでした。このウェブサイトhttp://edrackham.com/apache/beginners-mod_rewrite-tutorial/でチュートリアルも試しました 。 mod_rewrite を使用してクリーンな URL を取得しようとしています。例えば:

  www.myweb.com/itemdetail.php?itemid=111234

  www.myweb.com/itemdetail/111234 or 
  www.myweb.com/itemdetail/iphone

これは私の .htaccess ファイルの内容です。

   RewriteEngine On
   RewriteCond %{REQUEST_FILENAME} !-d 
   RewriteCond %{REQUEST_FILENAME} !-f 
   RewriteCond %(REQUEST_FILENAME) !-l
   RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]

stackoverflow で提案されているように、上記のファイルに次の rewriterule を追加しました

   RewriteRule ^itemdetail/([0-9]+)/$ itemdetail.php?itemid=$1 [NC,L]  

しかし、これは私の問題を解決しませんでした。どんな提案でも大歓迎です。

4

2 に答える 2

0

一部のサーバーでは、RewriteRule でスラッシュを使用できません (同じ問題があります)。これを確認するには、htaccess ファイルとして次を試してください。


    RewriteEngine on
    RewriteRule ^itemdetail-([0-9]+)/?$ itemdetail.php?itemid=$1

編集: もちろん、パーマリンクは www.myweb.com/itemdetail-111234 になります

于 2012-09-07T09:04:40.433 に答える
0

最後のスラッシュはオプションにする必要があります。

RewriteRule ^itemdetail/([0-9]+)/?$ itemdetail.php?itemid=$1 [NC,L]
于 2012-09-06T16:07:14.880 に答える