1

次の設定を考えると、私はうまくいかない mod_rewrite をしたいと思います:

共有ホスティング環境のディレクトリを指す「example.org」などのドメインがあります。たとえばexample/、次のファイル構造があります。

example/
    index.php
    .htaccess

のような URLexample.org/testを に書き換える必要がありますexample.org/index.php?p=test。私が思いついたのは次のとおりです。

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z]+)$ index.php?p=$1 [L,QSA]

残念ながら、たとえばexample.org/testFirefox で開くと、次のエラーが発生します。

ページが正しくリダイレ​​クトされない

Firefox は、サーバーがこのアドレスへのリクエストを決して完了しない方法でリダイレクトしていることを検出しました。

  • この問題は、Cookie の受け入れを無効にするか拒否することによって発生することがあります。

ただし、一致する部分を次のようにプレフィックスすると機能します。

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^prefix/([a-z]+)$ index.php?p=$1 [L,QSA]

CSS や JavaScript などの追加リソースが正しく参照されていませんが、eg を開くことができexample.org/prefix/testます。index.php?p=test

誰が助けることができますか?

4

0 に答える 0