Website made with rich jQuery,Ajax & Perl,PHP
ジオステーション
Sponsor
全てのページを動的生成
[最終更新日:2011/01/29]
会員専用のページなどでは、コンテンツそれぞれのページのアドレスを公開したくないことが良く有ります。 ベーシック認証など、サーバの知識が有れば問題ありませんが、サーバ設定を一切行わなくてもCGI1つでコンテンツの管理は行えます。 それは、全てのページを1つのアドレスで処理することです。 複数有るドキュメントを1つのCGIに表示させるのです。 しかも、こんなに簡単なスクリプトで...
$(this).corner("left");PHP サンプル

  <?php
 $doc = "startpage.html";
 if ($_REQUEST[p] && is_file("secret_document/$_REQUEST[p].html") {
 	$doc = "$_REQUEST[p].html";
 }
 if ($h = fopen("secret_document/$doc", "r")) {
 	while (!feof($h)) {
 		$html .= fgets($h);
 	}
 	$html = str_replace("\n", " ", $html);
 }
 header("Content-Type:text/html; charset=UTF-8");
 echo preg_replace("/[\t]/", "", $html);
 ?>  
このスクリプトをindex.phpとして、サイトのルートディレクトリに置きます。
このサンプルでは、パラメータに何も指定しないでドメインにアクセスすると/secret_documentディレクトリに有るstartpage.htmlを表示しなさい。 p=に続いてパラメータが指定されていると指定されたファイルを表示しなさいとなっています。 ドキュメントは簡単に推測できない名称(ここではsecret_document)のディレクトリにすべて置いておきます。 実際、当サイトのほとんどはこの仕組みで表示されています。
何も指定しないでドメインhttp://www.inetagency.net/にアクセスするとstartpage.htmlが表示され、 パラメータ?p=に続いてファイル名http://www.inetagency.net/?p=lightboxを指定するとlightbox.htmlが表示されています。 この仕組みだとindex.phpを介さずにどのページも参照できないことになります。
当サイトは、特にアクセスを制限していませんので認証は行っていませんが、 このスクリプトに認証処理を追加すると認証なしでは何も参照できなくなります。
$(this).corner("left");Perl サンプル

  #!/usr/bin/perl
 $doc = "startpage.html";
 if ($_REQUEST[p] && -e "secret_document/$_REQUEST[p].html") {
 	$doc = "$_REQUEST[p].html";
 }
 if (open(in, "secret_document/$doc")) {
 	while (<in>) {
 		$html .= $_;
 	}
 	$html =~ s/\n/ /g;
 	$html =~ s/\t//g;
 }
 print "Content-Type:text/html; charset=UTF-8\n\n";
 print $html;
  
これをindex.cgiとして保存してください。
Perlは改行コードをlfにしたり、FTPでアップロー後にパーミッションを755に設定しなければ動作しないなど、 多少厄介ですから初心者の方はPHPが楽かもしれません。

既にお気づきかもしれませんが、当サイトのソース表示は読みにくいですね。 全てが1行で書かれています。実際は分かりやすくインデントも多用して記述しているのですが、 表示時に無駄な文字を削除して、少しでも軽く、速度をあげるよう工夫しています。 このスクリプトも同じ効果が得られます。

今回は、index.phpやindex.cgiにパラメータを付けてでアクセスするようにしましたが、 拡張子を無くして
http://www.inetagency.net/index/lightbox/
のように、PATH_INFOを使って、あたかも静的表示に見せる方法も有ります。 こちらは.htaccessを設定する必要が有りますので初心者用には少し厄介だと思いますので次回にしましょう。
Comment
$(this).corner("left");コメントに関するお約束

  1. ご意見、ご希望、ご質問など、何かありましたらご投稿ください。
  2. ご質問に対する回答は、分かる範囲でお答えしますが、お約束は出来ません。
  3. 投稿していただいたコメントはこのページに記載されます。
  4. コメントは各ページごとに独立しています。それぞれのテーマに沿ったコメントをお願いします。
  5. タグはいっさい使用できません。タグもそのまま表示されます。
  6. 印は必須です。ハンドル名でも結構ですのでご記入ください。
  7. パスワードを記入しておけばご自分の記事を削除できます。
  8. 当サイトにふさわしくないと判断した記事は管理者の独断で削除することがあります。
お名前
パスワード
件名

Enquete
このページの情報、記事はお役に立ちましたでしょうか?
はい いいえ どちらとも言えない

※ご意見が有ればどうぞ(公開されません)
更新履歴
10/07/26 Winテーマの変更
10/06/08 まだまだ使えるXP
10/06/02 jQueryテーマ...
10/05/25 Win7は業務に...
10/04/11 携帯位置情報取得
10/03/09 カレンダーの追加
10/03/01 サービス開始
有料サービス
  1. データ変換サービス
    番地まで記載されたテキスト形式の住所データをお持ちの場合、「緯度」、「経度」及び、 「最寄り駅」と座標、「最寄のインター」と座標の情報を追加したCSVデータを作成してお返しします。 座標付ですので簡単にGoogleマップに位置表示することができます。
    【例】
    名称 住所
    東京タワー 東京都港区芝公園4丁目2-8

    名称 住所 緯度 経度 沿線 最寄り駅 緯度 経度 高速名 インター 緯度 経度
    東京タワー 東京都港区芝公園4丁目2-8 35.6585873 139.7454247 都営大江戸線 赤羽橋 35.655007 139.743642 首都高速都心環状線 芝公園 35.6544767 139.745769
    ※住所データは必須です。電話番号では特定できません。

    費用は1件当たり、わずか32円。100件で3,200円、1000件でも32,000円です。
    追加される最寄り駅、最寄のインター共に直線距離で最も近いもの1件です。複数必要な場合はお問合せください。
  2. システム開発
    Googleマップや最寄り駅、最寄のインターを利用したWEBシステムを開発します。
    自社製品が全国どこで購入可能で、どの駅で降りれば1番近いのかなどをユーザにお知らせすることができ、販売促進にも貢献します。 また、ご自分の住所を指定して最も近い店舗を検索したり、距離を指定して範囲内の店舗を検索して地図を表示するシステムの開発もできます。
    もちろん、携帯版も可能です。
    携帯版はGIF形式の静止画ですのでキャリヤや機種を選びません。 ほぼ、全て機種で使用可能なシステムになります。

    携帯電話ですからWEBのようなパフォーマンスは望めませんが、 静止画でも地図の「縮小」、「拡大」をサポートします。
    お見積もりは「お問合せ」から、 ご希望の機能をできるだけ詳しくお書きいただき、お送りください。
  3. 最新のユーザインターフェースの導入
    現在注目を集めているAjaxやJavascriptを使用したハイセンスなインターフェースの導入をお手伝いします。
    jQueryプラグインのオーバーレイを複数使用した最先端のドキュメントの生成が可能になります。 また、オーバーレイやAjaxを使用する事で、無駄なリロードを減らすことができ、パフォーマンスも向上します。
お問合せフォーム
  1. 全てのお問合せはこちらの専用フォームをご使用ください。 もちろん、ご意見/ご希望でも結構です。
  2. システムに存在しない路線や、新たに開通した路線をご存知の場合はお知らせください。
  3. 有料サービスで新たなシステム開発のお見積もりをご希望の場合は、 出来る限りご希望の機能を詳しくお願いします。
  4. は必須項目です。必ずご記入ください。
お名前
フリガナ
Email
Email(確認) ※確認のためもう一度 (コピー禁止)
タイトル お問合せ お見積もり ご意見/ご希望
内容