
こんにちは。
かなりハマってしまいました。
多分これ以上は、自身の力で解決できそうにないと思い質問させて頂きます。
現在、Perlを使ったシステムを作っています。
そこでページが見つからなかった場合に、どのページが見つからなかったのか、そのURLに合わせて
「ページが見つかりません。○○を確認してください」のような動的なページを作成したいと思っています。
■現状
htaccessで、
ErrorDocument 404 /maintainace/cgi/make_page_err.cgi
の記述をしています。
■期待する結果
呼び出し先のCGI側で$ENV{'REQUEST_URI'}から
エラーとなったURLを取得し、それに合わせて「Print xxxx」をする
(さらに最終的にはHTMLを作成し、それを表示したい)
■現在の結果
無反応。
ただし、処理が走っているかを確認するために、呼び出し先のCGIに
open File, ">>./404_log.txt";
を入れると正しくテキストファイルが書き込まれる → 通っていることまでわかる。
試しにCGIの先頭に
print "Content-type: text/html\n\n";
print "aaa";
exit;
とすると「Oops! This link appears to be broken.」(Firefox)のエラー画面が表示。
上記のテキスト書き込みなし。
更に
ErrorDocument 404 /maintainace/cgi/make_page_err.cgi
を絶対パスにしたところ
動作はするが、$ENV{'REQUEST_URI'}の値が「make_page_err.cgi」とCGI自身なり、
元のURLが拾えない。
このような状態です。
ネットでもいろいろ検索しましたが、求めている回答は見つかりませんでした。
直接の回答でなくても、参考になるURLなどでも構いませんので
ご存じある方お願いいたします。
No.1ベストアンサー
- 回答日時:
$ENV{'REQUEST_URI'} では取得できないと思います。
htaccessで、
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ maintainace/cgi/make_page_err.cgi?$1 [L]
これで $ENV{'QUERY_STRING'} で取得できるのでは。
参考URL:http://webings.net/htaccess/rewriteerror/
geeok様
ビンゴでした!!
多分8時間くらいネットでいろいろ調べてもできず、正直無理かもと思っていました。
教えていただいたサイトも勉強になりそうです。
本当に助かりました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- CGI (フリーの)ツリー掲示版CGI、昔は多用させてもらいましたが・・今セキュリティ上どうでしょう? 2 2023/06/25 07:18
- CGI CGIで出力するhtmlの<!DOCTYPE html>等のタグは要りますか? 2 2023/02/05 21:26
- CGI CGIが読み書きするデータファイルのパーミッションはさくらのインターネットでは何にするべき? 1 2023/05/02 16:44
- ホームページ作成・プログラミング CGIが実行可能なHP領域又はレンタルサーバーでおすすめの所を教えてください 現在ホームページ領域の 1 2023/01/01 11:47
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- Perl Perlのエラーについてご教授ください。初心者です。 CGIを別サーバに移したところ、Perlのバー 5 2023/05/31 10:48
- 美術・アート トレパク疑惑をかけられにくくするには ここ最近いわゆるトレパク警察のいいがかりがが厳しくなったようで 1 2023/08/21 09:59
- PHP PHP ページング データベース 1 2022/06/16 10:30
- Perl perlの構文でカンマの意味が分からない 2 2022/10/30 01:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
自CGIのURLのパス部分を取得す...
-
htmlファイルへのcgiの組み込み...
-
cgiとplとpm
-
CGIの中にinclude
-
「動的ページが表示されない」...
-
Quantifier follows nothing in...
-
jcode.plが読み込めない
-
KENT WEBのWebpatio(http://ww...
-
エクセルで毎月第2週日の水曜日...
-
エクセルで相対パスの書き方を...
-
週2回のペースって だいたい何...
-
[Excel] ある日の曜日が当月の"...
-
c言語の質問です。 ある月のカ...
-
エクセル、条件付書式について...
-
raspberrypiから外部サーバーへ...
-
ヘッダのinclude順
-
An HTTPdでPerlを動かす
-
月の第一週とは
-
土曜日の26時って何曜日の何時...
-
グローバルIPアドレスの取得。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
cgiとplとpm
-
jcode.plが読み込めない
-
xamppでcgiが動かない
-
perlのrequireの動き方について...
-
Locationでターゲット指定はで...
-
htmlからテキストを返すperlを...
-
Perlで属性を変更したい
-
Perlでuse strictと %inの共存
-
コマンドラインでGET or POSTで...
-
require文が実行できない
-
ファイル書込時にPermission de...
-
requireでreturnを使いたいので...
-
Perlで書いたページが表示されない
-
携帯用のページに perl で post
-
Perlのデバッグ方法って。。。...
-
cgiからcgiをコールする。
-
Internal Server Error
-
フォームでインクリメント入力→...
-
KENT WEBのWebpatio(http://ww...
-
pushボタンを押した後、画面を...
おすすめ情報