1

次のような URL を作成しています。

http://domain.com/app/ clientID /controller/ または ../app/ clientID /filename.ext

URL から英数字の clientID を削除する必要があります。

私の現在のhtaccessは次のとおりです。

RewriteRule ^app/([a-z0-9]+) /(. )$ /app/$2 [NC,L]

htaccess テスターに​​はパスしますが、Web で 404 エラーが発生します。

サンプル: http://domain.com/app/gmcpoujth7/js/fancybox/jquery.fancybox-1.3.4.pack.js

私は何を間違っていますか?

4

1 に答える 1

0

これは両面の問題です。

  1. clientIDURL からを削除したい
  2. スクリプトを引き続き機能させたい

これを機能させるには、書き換えスクリプトを追加して、ファイルにアクセスする場所をファイルに伝える必要もあります。これは少しトリッキーで、htaccess.

URL が書き換えられてリダイレクトされるため、その URL を現在の にリダイレクトする何らかの方法が必要になりますclientID。これはトリッキーな部分です。次の行を追加して、Cookie を設定できます。

RewriteRule ^app/([a-z0-9]+)/(.)$ /app/$2 [co=clientID:$1:.yourserver.com:7200:/,NC,L]

次に、2 番目の呼び出しで、次のようにローカルで書き換えます: (未テスト)

RewriteCond %{HTTP_COOKIE} ^.*clientID=([a-z0-9]+).*$ [NC]
RewriteRule /app/$ /app/$1/$2 [QSA]

誰かがhttp://domain.com/app/js/fancybox/jquery.fancybox-1.3.4.pack.js最初に.clientID複数ある場合、どこに送ればよいかわかりませんclientID。あなたの最善の策は、そのclientIDままにしておくことです。

于 2012-09-28T14:34:04.223 に答える