押入れ起業

ガレージベンチャー、ならぬ。サボっていましたが再開します。

‘http://’. $_SERVER[‘HTTP_HOST’]; も header(‘Location: ./’);相対指定もやってはいけない事だった

      2015/04/08

$_SERVER[‘HTTP_HOST’]でリンク先を作るのも、header(‘Location:~’);のアドレス相対指定転送も、やってはいけないことだったらしい。

両方やってた。なんか異常があったらとりあえずトップページへ飛ばしておけって思って。しかもheader(‘Location:’.$_SERVER[‘HTTP_HOST’]);とheader(‘Location:./’]);が混在していた。

PHP: $_SERVER – Manual

‘HTTP_HOST’
現在のリクエストに Host: ヘッダが もしあればその内容。

HTTP1.1のLocationヘッダは、絶対URLでないとRFC違反 | ψ(プサイ)の興味関心空間

んで、すべてのphpスクリプトの先頭に

if( $_SERVER['HTTP_HOST'] != "localhost" )
		{ require_once('レンタルサーバー用の設定ファイル'); }
	    else{ require_once('ローカルのxamppでの設定ファイル'); }

ってやって、設定ファイルにトップページの絶対URLを書いた。この設定ファイルには他にも、エラー表示の制御とか画像へ描画するフォントの位置とかを書いています。んでさくらのレンタルサーバでは/www/の一段上へいろいろなドメインのディレクトリを作ってその中へ入れてる。この構成はxserverも同じかな。

/www/example.com/
/www/example.net/
/setting/example.com/設定ファイル.inc.php
/setting/example.net/設定ファイル.inc.php

 - PHP

応援クリックお願いします:

PC

PC

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事

piwik
Piwikの手動アップデート

少し前からPiwikのアップデートが来ていたのだけれど、いつもどおり自動アップデ …

PHP
PHPで画像に文字列を描画する関数 imagefttext、描画する文字列の描画サイズを取得する関数 imagettfbbox

言いたいことはタイトルの通り。 imagefttext という関数を使うと画像に …

PHP
PHPでリファラ(参照元)をチェックするのはこれでいいの?

あるサイトでのページでフォーム入力し、そのサイト内の別ページへポストして結果を表 …

daterss
アクセスした日時を返すだけのRSSウェブサービスを作った

電脳ウェブサービスをやると言って、んでいよいよhtmlへはめ込む段階で今度はBo …

XAMPP
XAMPPのPHPとさくらのレンタルサーバー・ライトでImageMagick/imagickがやっと動いたのでメモ

XAMPPのPHPでImageMagick/imagickが動いたやりかた いろ …

PHP
PDOでSQLiteの研究(1)

最近は電脳卸の研究が止まっているが、いろいろ忙しく。でもやりたい事はいろいろある …

さくらのレンタルサーバー
phpinfo()のdate項目、phpスクリプト中のdate()関数にwarning警告が出た(さくらのレンタルサーバー)

さくらのレンタルサーバで、phpinfo()表示やdate()関数を使っていたら …

PHP
ヒアドキュメントに気をつけろ!なぜかエラーが出る場合…

ヒアドキュメントを使ってみたら何故か意味不明な、異常に長いエラーが出たぜ。 Pa …

PHP
PHPでxmlデータを取得する

simplexml_load_file($url); – XMLファ …

PHP
MagpieRSSの使い方を自分のためにメモ

今更だけど、MagpieRSSの使い方を再確認。 Magpie RSS &#82 …