1

私はこのルールを実行しようとしています:

RewriteRule ^featured$ home.php?featurez=1 [L,NC,PT,R=301]

しかし、私が得るものは次のとおりです。

http://apps.com/var/www/vhosts/apps.com/httpdocs/iphone/home.php?featurez=1

私はPTタグでそれを克服しようとしました...しかし何もそれに影響を与えません:(..問題は何ですか、そしてそれをどのように解決するのですか..

4

3 に答える 3

1

あなたはこれを試すことができます:

RewriteEngine on
RewriteRule ^featured$ home.php?featurez=1 [QSA,L,R=301]
于 2012-11-08T13:31:32.753 に答える
0
RewriteRule ^featured$ http://%{HTTP_HOST}/home.php?featurez=1 [L,NC,PT,R=301]
于 2012-11-08T13:29:53.427 に答える
0

ルールのターゲットの先頭のスラッシュを省略した場合、apacheがパスがURIパスであるかファイルパスであるかを推測する必要がある場合、誤って推測します。先頭にスラッシュを追加する(またはターゲットを絶対URIにする)か、リライトベースを追加することで、アプローチを支援できます。

RewriteBase /iphone/
RewriteRule ^featured$ home.php?featurez=1 [L,NC,PT,R=301]

(または、リクエストのベースURIが何であれ)

または、ターゲットを絶対URIに変更します。

RewriteRule ^featured$ /iphone/home.php?featurez=1 [L,NC,PT,R=301]

これは、htaccessファイルがドキュメントルート内のディレクトリ「iphone」にあり、リダイレクトにアクセスするために移動することを前提としていますhttp://your.domain/iphone/featurediphone/それ以外の場合は、すべてのものを取り除きます。

于 2012-11-08T15:34:24.467 に答える