OK「URLの書き換えとリダイレクトの問題は初めてです。GoogleとStackoverflowで上下に検索して、うまくいく答えを見つけましたが、何もうまくいかないようです!!」
私が達成しようとしているのは... このリンクをご覧ください: mysite.com/research/index.php?quote=goog
それを変換して、これにリダイレクトします: mysite.com/research/goog
URL文字列の末尾の「goog」がURLに配置されたフォームから取得されることは重要ですか? 「goog」をつかむために使用されるコードはここにあります <?php echo $_POST["quote"];?>
以下は、私が持っている唯一のスニペットコードですhtaccessファイルは機能しません。動作しませんか?間違っていますか?コードに何か足りないものがありますか?ルートディレクトリ(mysite.com)にコードを配置します。 .com / research /)
RewriteEngine On
RewriteRule ^quote/([^/]*)$ /research/index.php?quote=$1 [L]
ホスト/サーバーが.htaccessファイルを受け入れられない可能性はありますか?web.configファイルでそれを行う必要がありますか?その場合、上記のコードを有効なweb.configファイルに変換するにはどうすればよいですか?
回答:
回答№1の場合は3これらはあなたが必要とするルールです /research/.htaccess
ファイル:
RewriteEngine On
RewriteBase /research/
RewriteCond %{THE_REQUEST} /index.php?quote=([^s&]+) [NC]
RewriteRule ^ %1? [R=301,L,NE]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ index.php?quote=$1 [L,QSA,NC]
にアクセスします index.php
を使用して:
$quote = $_GET["quote"];`
回答№2の場合は0
これはあなたのために働くはずです:
RewriteEngine On
RewriteCond %{QUERY_STRING} "quote=([^&]+)"
RewriteRule ^/research/index.php /research/%1? [R,L]
クエリ文字列は、URLにリクエストして、明示的に確認する必要があります。 RewriteCondを使用すると、「quote」パラメーターが存在する場合、その値を「キャプチャ」することができます(それに続く「&」以外のすべての文字を取得します)。これにより、書き換え自体で使用できる%1変数が設定されます。