URLの「/?hoge=1」へアクセスした時だけ、「/」へリダイレクトするよう、.htaccessでURL操作

Apache.htaccess

RewriteRuleとは?

 状態:-  閲覧数:671  投稿日:2016-10-14  更新日:2016-10-14
決められた法則に従い、URLを書き換える機能

RewriteEngine on
・RewriteRuleの機能を有効にする
・「on」の部分を「off」にすればRewriteRuleの機能を無効にする

書式
RewriteRule 置換前のパターン 置換後の文字列 フラグ


RewriteCondディレクティブ


書き換えの条件を指定
・この条件に一致した場合だけ書き換えが行われる

RewriteRule の前に RewriteCond を記述
・特定の書き換えルールに対して条件を指定

コード

 閲覧数:142 投稿日:2016-10-14 更新日:2016-10-14 
Query String の値
・ %{QUERY_STRING} で参照

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{QUERY_STRING} ^page=1
 RewriteRule ^(.*)$ /$1? [R=301,L]
</IfModule>


現状
・他設定も含む
<IfModule mod_rewrite.c>
 RewriteEngine On

 RewriteCond %{QUERY_STRING} ^page=1
 RewriteRule ^(.*)$ /$1? [R=301,L]

 RewriteCond %{REQUEST_URI} !/?(pageranking)/?
 RewriteCond %{REQUEST_URI} !/?(convertimg)/?
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>



.htaccessでパラメータつきのURLをパラメータなしのURLにリダイレクトする方法
URLの「/?hoge=1」へアクセスした時だけ、「/」へリダイレクトするよう、.htaccessでURL操作したい
What does RewriteRule ^(.*)/$ ?path=$1 [QSA,L] mean in my .htaccess?
Apache mod_rewrite Introduction - Apache HTTP Server Version 2.4
勘違いしやすいmod_rewriteの[QSA]フラグの仕様
.htaccessを用いたURL書き換えをマスターする・前編
mod_rewrite でパラメータ(引数)付きの URL を扱う(QSA オプション) 
.htaccessでクエリ付きリダイレクト
RewriteRuleについて
[.htaccess] 条件に該当するURLを書き換える [mod_rewrite]
mod_rewriteの考え方。


異なるIPアドレスからアクセスして動作確認 → aguse / HeartRails Capture

設置内容履歴



類似度ページランキング
順位 ページタイトル抜粋
1 指定IPアドレス以外からのアクセスは、.htaccessでサイト内のメンテナンスページへ誘導 36
2 さくらVPSへは「http://localhost」でアクセス出来ない 33
3 さくらVPSへは「http://localhost:ポート番号」でアクセス出来ない 33
4 CentOS7再起動時に、/run 直下に作成したディレクトリを削除しないようにする 33
5 .htaccessで各種アクセス制限 33
6 Apache 2.2.15を、2.2系の最新へアップグレードしたいがうまくいかない 29
7 申込→公開9.Railsアプリケーションを作成して、「Ruby on Rails」の動作確認をする 29
8 Reached target Shutdown メッセージが表示されたあと、シャットダウンまたは再起動プロセスがハングアップする 29
9 /etc/groupでは、「そのグループをプライマリグループとするユーザ名」を確認することは出来ない 29
10 「名前ベースのバーチャルホスト」で、「ServerName に一致する名前のないバーチャルホストへのアクセス」があったとき 28
11 CentOSで、指定ディレクトリ以下の「ファイル内容」を全文置換 28
12 ディレクトリへ設定する特殊なアクセス権 27
13 403エラーが解決しない → .htaccess確認。指定拡張子への直接アクセスを制限していないか 27
14 Go1.9.2インストール /usr/local/go/bin/go CentOS6 27
15 Go1.10.1インストール /usr/local/go/bin/go CentOS7 27
16 異なるIPアドレスからアクセスして動作確認 → aguse / HeartRails Capture 26
17 拡張子「.html」でPHPスクリプト実行 26
18 Apache「.htaccess」→ Nginx 25
19 7回目-12.Go1.10インストール /usr/local/go/bin/go CentOS7 25
20 「CentOS 7」コマンドラインにて、「Headless Chrome(Google Chrome 79.0.3945.79)」スクリーンキャプチャの動作確認 25
2021/9/24 0:29 更新
週間人気ページランキング / 9-16 → 9-22
順位 ページタイトル抜粋 アクセス数
1 Nginx設定。エラーログレベル | Nginx(Webサーバ) 19
2 PHP実行ユーザ設定 / CentOS6 / Apache | PHP(プログラミング言語) 14
3 PHPのmb_send_mail関数でメール送信できない | メール処理システム 13
4 9回目-13.MySQL5.7.21設定 | CentOS 7 2週間無料のお試し期間 9回目(さくらVPS) 12
5 touch コマンド / viコマンド。新規ファイル作成時の違い | Linuxコマンド 8
6 ソースからビルドしたPython 2.7.3 アンインストール失敗 | Python(プログラミング言語) 7
6 FFmpeg 2.8.15 を yum インストール | ソフトウェアスイート 7
6 「設定ファイルに、暗号化 (blowfish_secret) 用の非公開パスフレーズの設定を必要とするようになりました。」対応 7
6 Python 3.5 アンインストール / yum remove | Python(プログラミング言語) 7
6 manページ日本語表示 | CentOS 7 (CentOS) 7
6 PHPファイルでchmodエラー | PHP(プログラミング言語) 7
7 ABRT により 問題が検出されました | CentOS 7 (CentOS) 6
7 Python 3.6 インストール / make altinstall | Python(プログラミング言語) 6
7 さくらVPS0 6
8 Reached target Shutdown メッセージが表示されたあと、シャットダウンまたは再起動プロセスがハングアップする | CentOS 7 (CentOS) 5
9 PHP Version 7.1.2 php-mecabエクステンション対応 / PHP 7.0.14 からのアップグレード  | MeCab(形態素解析) 4
9 echo と cat の違い 4
9 phpMyAdmin 4.4.3(phpMyAdmin) カテゴリー 4
9 tar: これは tar アーカイブではないようです 4
9 MySQL 5.5 から 5.6 へのアップグレード | MySQL(データベース) 4
2021/9/23 1:01 更新