2

私のクライアントのウェブホストは、サイトの書き換えルールを仮想ホスト ファイルに配置することを主張していますが、これにより「Bad request」というエラーが発生します。ローカル サーバーの .htaccess や他の同様のサイトに同じルールを配置すると、完全に機能します。ルールは次のとおりです。

    RewriteRule ^api/ index_rest.php [L]
    RewriteRule ^index_rest.php - [L]
    RewriteRule ^([^/]+/)?content/treemenu.* index_treemenu.php [L]
    RewriteRule ^var/([^/]+/)?storage/images(-versioned)?/.* - [L]
    RewriteRule ^var/([^/]+/)?cache/(texttoimage|public)/.* - [L]
    RewriteRule ^design/[^/]+/(stylesheets|images|javascript)/.* - [L]
    RewriteRule ^share/icons/.* - [L]
    RewriteRule ^extension/[^/]+/design/[^/]+/(stylesheets|flash|images|lib|javascripts?)/.* - [L]
    RewriteRule ^packages/styles/.+/(stylesheets|images|javascript)/[^/]+/.* - [L]
    RewriteRule ^packages/styles/.+/thumbnail/.* - [L]
    RewriteRule ^var/storage/packages/.* - [L]
    RewriteRule ^favicon.ico - [L]
    RewriteRule ^design/standard/images/favicon.ico - [L]
    RewriteRule ^robots.txt - [L]
    RewriteRule ^w3c/p3p.xml - [L]
    RewriteRule .* index.php

ホストからここにあるエラー ログが提供されましたが、問題を特定できません。どんな助けでも大歓迎です。

4

1 に答える 1

4

VirtualHost コンテキストで使用する場合は、先頭にスラッシュを使用する必要があります。

VirtualHost コンテキストでは、パターンは最初に URL のホスト名とポートの後、クエリ文字列の前の部分と照合されます (例: "/app1/index.html")。

そう^...でなければならない^/...

于 2011-11-28T15:58:58.057 に答える