index.phpとhogeディレクトリ内にあるsab.phpというファイルから

commonディレクトリ内のlayout.cssとconfig.phpを使う場合、
ルートパスが使えるならどちらのファイルにも、
<link rel="stylesheet" type="text/css" href="'. URL.'/common/layout.css" />、
include('/common/config.php')とか記入すればいいと思うのですが、
さくらサーバー、ローカルともうまういきません。
しかし相対パスを使ってしまうと、
階層のファイルごとにパスを変更するのも面倒です。

xamppとさくらサーバー及びさくらでルートパスをうまく使う方法、
あるいは別の代替案をおしえてください。

環境はwindows7、xampp、PHP5、DreamWeaverCs5.5です。
以上よろしくお願いします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2012/10/01 14:50:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:rouge_2008 No.2

回答回数595ベストアンサー獲得回数351

ポイント50pt

HTMLの場合、絶対パスは利用できません。
「/」から始まるパスを記述した場合、WEBルートからのパスとして正しく解釈されますので、次のように記述するだけで適用されます。(※CSSだけでなくaタグによるリンク等も同じです。)

<link rel="stylesheet" type="text/css" href="/common/layout.css" />

※「http://~」から記述する必要はありません。


PHPなどのCGIでは、「/」から始まるパスは絶対パスとして解釈されますので、「$_SERVER["DOCUMENT_ROOT"]」が利用できます。

include($_SERVER["DOCUMENT_ROOT"] . '/common/config.php');
他2件のコメントを見る
id:taroemon

丁寧なご回答ありがとうございます。

まだうまく行ってませんが、
いただいたご回答を元に試してみようと思います。
うまくいきましたらご報告させていただきます。

2012/10/01 16:23:48
id:rouge_2008

その後解決したでしょうか?
どの部分が上手くいかないのか、設定など動作環境と動作状態を詳しく教えていただければ、何か分かるかもしれません。
.htaccessに何か設定をしているか、あるいはフレームワークを使用していて、その影響という事はありませんか?

2012/10/04 14:19:44

その他の回答1件)

id:oil999 No.1

回答回数1728ベストアンサー獲得回数320

ポイント50pt

PHP の $_SERVER['DOCUMENT_ROOT'] でドキュメントルートを取得してはいかがですか。

id:rouge_2008 No.2

回答回数595ベストアンサー獲得回数351ここでベストアンサー

ポイント50pt

HTMLの場合、絶対パスは利用できません。
「/」から始まるパスを記述した場合、WEBルートからのパスとして正しく解釈されますので、次のように記述するだけで適用されます。(※CSSだけでなくaタグによるリンク等も同じです。)

<link rel="stylesheet" type="text/css" href="/common/layout.css" />

※「http://~」から記述する必要はありません。


PHPなどのCGIでは、「/」から始まるパスは絶対パスとして解釈されますので、「$_SERVER["DOCUMENT_ROOT"]」が利用できます。

include($_SERVER["DOCUMENT_ROOT"] . '/common/config.php');
他2件のコメントを見る
id:taroemon

丁寧なご回答ありがとうございます。

まだうまく行ってませんが、
いただいたご回答を元に試してみようと思います。
うまくいきましたらご報告させていただきます。

2012/10/01 16:23:48
id:rouge_2008

その後解決したでしょうか?
どの部分が上手くいかないのか、設定など動作環境と動作状態を詳しく教えていただければ、何か分かるかもしれません。
.htaccessに何か設定をしているか、あるいはフレームワークを使用していて、その影響という事はありませんか?

2012/10/04 14:19:44

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません