例えば・・・
以下の処理(【1】と【2】)を.htaccess内で処理したいです。
【1】
http://example.com/1.html
↓
http://example.com/kkk.cgi?mode=main&cno=1
------------------
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([0-9]+)\.html$ kkk.cgi?mode=main&cno=$1 [L]
------------------
上記で変換は出来るのですが、これだと静的URLと動的URLで「同じコンテンツが表示(重複ページ扱い=コピーページ扱い)」されます。
やりたいことは、CGIにアクセスすると「301リダイレクトで静的ページを表示する」という仕様にしたいと考えております。尚、パラメータ無しの直接アクセス(kkk.cgi)は、同フォルダのindex.htmlに301リダイレクトできれば最高です。
【2】
http://example.com/kkk.cgi?mode=main&cno=1
↓301リダイレクト
http://example.com/1.html
------------------
RewriteCond %{QUERY_STRING} ^mode=main&cno=(\d+)$
RewriteRule ^kkk\.cgi$ %1\.html? [R=301,L]
------------------
しかし【1】と【2】の処理を同時に行うとループとなります。phpなどを一切使わず、.htaccessの記述だけでこの問題をクリアできる方、何卒ご指導お願いいたします。
No.1ベストアンサー
- 回答日時:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([0-9]+)\.html$ kkk.cgi?mode=main&cno=$1 [L]
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteCond %{QUERY_STRING} ^mode=main&cno=(\d+)$
RewriteRule ^kkk\.cgi$ %1\.html? [R=301,L]
で、どうでしょうか?リライトでcgiに来たのでない場合だけリダイレクト。
この2日間は教えてGOOのサーバーメンテナンスの為、お礼とご報告が遅れてしまいました。まずはお陰様で無事ループせずに動作させることができました。notnotさん凄い(笑)本当にありがとうございます!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle TOPページ以外の、301リダイレクトの記述設定について 1 2022/08/12 17:14
- その他(プログラミング・Web制作) .htaccessファイルの修正がこれで問題ないかどうか 1 2022/04/21 08:42
- CGI (フリーの)ツリー掲示版CGI、昔は多用させてもらいましたが・・今セキュリティ上どうでしょう? 2 2023/06/25 07:18
- その他(開発・運用・管理) 【至急】.htaccessによるディレクトリ単位でのリダイレクト 2 2023/08/10 13:46
- WordPress(ワードプレス) httpからhttpsへのリダイレクト設定について 2 2022/04/17 09:49
- CGI htmlからcgiを自動的に起動させたい 1 2023/02/21 19:39
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- ホームページ作成・プログラミング CGIが実行可能なHP領域又はレンタルサーバーでおすすめの所を教えてください 現在ホームページ領域の 1 2023/01/01 11:47
- SEO googleサーチコンソールで、重複URLが多数発生、その修正方法について 2 2023/06/23 16:15
- HTML・CSS 全部のアクセスを指定したページに転送させたい 2 2022/06/28 16:33
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
メールフォームのCGIでデータが...
-
YY-BOARDについて
-
EXCELファイルに誰がアクセスし...
-
リダイレクト機能
-
URLに~/cgi-bin/~を隠す方法
-
ラジオボタンのグループ化
-
直リンク用バナーの作り方
-
midi・・・要はhpでbgm鳴...
-
《エクセルVBA》「他の人が該当...
-
LAN内に接続されているPCをリ...
-
ASPから既存のexcelブックを開...
-
SFTPなどは使わないホームペー...
-
CGIが読み書きするデータファイ...
-
ASP(IIS?)のエラーについて
-
CGIでの500エラー
-
CGIの設置が分かりません・・・
-
VBAを使用して、外部サーバのフ...
-
つぼ八 上新庄店の場所。
-
perlからJavascriptを起動
-
cgiファイルを直接は見れなくす...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
表示画面が真っ白になる場合、...
-
Yomi-Search CGIですが・・・
-
htmlにアクセスと同時に、あるC...
-
アクセスカウンターの設置
-
.htaccessを用いて.cgiを.html...
-
アクセスカウンター(counter.cg...
-
検索インデックスを複数指定し...
-
メールフォームのCGIでデータが...
-
IISのSSIの設定について
-
さくらインターネットのCGIの設...
-
private_htmlについて
-
ログインCGI設置での500エラー
-
CGIでコードがむきだしの状態で...
-
自社サーバー異常発生。CGIがポ...
-
1-man.netでメールフォームの設...
-
YY-BOARDについて
-
トップページにCGI
-
cgiもしくはJAVAなのでしょうか...
-
Forbiddenの意味
-
EXCELファイルに誰がアクセスし...
おすすめ情報