phpファイルを表示できない - PHPプロ!Q&A掲示板

1534

  • 500P

phpファイルを表示できない

質問日時 / 2008年10月2日 13:37    回答数 / 7件

Questioner:  hachiya88  このエントリーをはてなブックマークに追加 

キーワード / php    xampp    apache   

現在PHP+MySQLでサイト製作を行っています。
XAMPP(Apache)のドキュメントルートをデフォルトから
Dドライブに変更したのですが、PHPファイルにアクセスすると
「ファイルのダウロード」となってしまいページを表示することが
できません。
どなたか解決策を知っていたら教えて下さい。

httpd.confの設定は
DocumentRoot "C:/xampp/htdocs"
↓に変更
DocumentRoot "D:/website/"

<Directory "C:/xampp/htdocs">
中略・・・
</Directory>
↓に変更
<Directory "D:/website">
 Options Indexes FollowSymLinks Includes ExecCGI
 AllowOverride All
 Order allow,deny
 Allow from all
</Directory>

よろしくお願いします。

この質問への意見の募集は締め切られ、ポイントは既に配分されました。
意見を投稿することはできますが、ポイントを受け取ることはできません。



ツリー一覧

┣A01tezcelloXampp を使用していませんのでハズしているかもしれま
┃┗A01-1hachiya88ご回答ありがとうございます。 XAMPPのhttpd.conf
┃ ┗A01-1-1hachiya88xampp/apache/extra/ディレクトリの中にhttpd-xampp.c
┃  ┗A01-1-1-1vaiostarこんばんわ。 PHP のみ「ファイルのダウロード」と
┃   ┗A01-1-1-1-1hachiya88vaiostar様、ご回答ありがとうございます。 D:/web
┗A02teck3DocumentRootにはバックスラッシュ「/」があって 下
 ┗A02-1hachiya88ご回答ありがとうございます。 DocumentRootのバッ

回答一覧

並び替え:

A01
answerertezcello [10月2日 14:32]

Xampp を使用していませんのでハズしているかもしれませんが、
httpd.conf に、
AddType application/x-httpd-php .php
というような行は無いでしょうか?
この設定で、PHP が機能します。もちろん PHP のモジュールが組み込まれていないと動きませんが...
手元の環境では、
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php .phtml
となっていました。

ひょっとして、
<Directory "C:/xampp/htdocs">
中略・・・
</Directory>
の中に AddType の行だけ記述されていませんか?

この意見に回答する

ツリーへ TOPへ

A01-1
replyerhachiya88 [10月2日 18:48]

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

XAMPPのhttpd.confには
---------------------------------------------
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php .phtml
---------------------------------------------
は記述されていませんでした。

また、libphp5.soというファイルはmodulesディレクトリには存在せずです。

また、
<Directory "C:/xampp/htdocs">
中略・・・
</Directory>
にはAddType~の記述もありません。

デフォルトのドキュメント環境ではうまく表示はできるんですけど・・・

製作環境はWindows XP
XAMPPバージョンは2.5
Apacheバージョンは2.2
PHPバージョンは5

引き続きよろしくお願い致します。

この意見に回答する

ツリーへ TOPへ

A01-1-1
replyerhachiya88 [10月2日 19:00]

xampp/apache/extra/ディレクトリの中にhttpd-xampp.confというファイルがあり、
その中に下記の記述を見つけました。
------------------------------------------------------------------------
<IfModule mime_module>
    #ScriptAlias /php/ "C:/xampp/php/"
    #Action application/x-httpd-php "/php/php-cgi.exe"
    LoadModule php5_module "C:/xampp/apache/bin/php5apache2.dll"
    AddType application/x-httpd-php-source .phps
    AddType application/x-httpd-php .php .php5 .php4 .php3 .phtml .phpt
------------------------------------------------------------------------
httpd.confが上記ファイルをインクルードして設定を反映させているみたいです。

ただ、ドキュメントルートをDドライブに設定し、その中でPHPを動かすやり方ができずに困っています。

ご回答よろしくお願い致します。

この意見に回答する

ツリーへ TOPへ

A01-1-1-1 満足
replyervaiostar [10月2日 21:58] (最終編集:10月2日 23:01)

こんばんわ。

PHP のみ「ファイルのダウロード」となるのでしょうか?HTML や画像ファイルでも同じ現象ですか?
全ファイルで同じ現象なら root path とか DocumentRoot みたいなところで設定違いだと思います。
PHP 限定なら php.ini のほうも設定違いかもしれません。
試しに D:/website へ以下の .htaccess ファイルを置いてみてください。
  1. Options -Indexes
  2. AddHandler application/x-httpd-php .php .html

他に、C:/xampp にあるファイルを「C:/xampp」で文字検索(ファイルに含まれる単語を検索)してみてはいかがでしょう?
引っかかった部分で、それらしいものを現パスである「D:/website」のほうへ置換してみるとか・・・。

↓あ、こういうのもありますが・・・。
http://webcollection.blog21.fc2.com/blog-entry-10.html
http://tokyo.atso-net.jp/pukiwikip/?XAMPP

当方 VertrigoServ なので xampp とは違うと思うんですが、解決のヒントが見つかればいいですね。

この意見に回答する

ツリーへ TOPへ

A01-1-1-1-1
replyerhachiya88 [10月2日 22:53]

vaiostar様、ご回答ありがとうございます。

D:/website直下にご指定いただいた.htaccessを置いたところ、
うまく表示することができました!

デフォルトではhttpd-xampp.confをインクルードし、
C:/xampp/htdocs/以下にphpの設定が有効でしたが、
当方が変更したD:/website/以下には設定されていなかった為、
phpファイルを読み込めなかったのだと思います。

本当にありがとうございました!

この意見に回答する

ツリーへ TOPへ

A02
answererteck3 [10月2日 19:26]

DocumentRootにはバックスラッシュ「/」があって
下のにはないですが変更後、Apacheリブートでどうでしょうか?

あとはdir_moduleに以下のような記載はありますか?
<IfModule dir_module>
    DirectoryIndex index.php index.php4 index.php3 index.cgi index.pl index.html index.htm index.shtml index.phtml
</IfModule>

この意見に回答する

ツリーへ TOPへ

A02-1
replyerhachiya88 [10月2日 19:37]

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

DocumentRootのバックスラッシュを抜いてリブートをかけても同じでした。

当方のdir_module以下は
<IfModule dir_module>
 DirectoryIndex index.php index.php5 index.php4 index.php3 index.cgi index.pl
 index.html index.htm index.shtml index.phtml
</IfModule>
になっています。

ひきつづきよろしくお願い致します。

この意見に回答する

ツリーへ TOPへ

<<質問一覧へ



Pick Up Q&A

Q
セッションがいいのか、それともデータベースがいいのか教えて下さい。
 このエントリーをはてなブックマークに追加 
A
>ボタンをクリックしたら選んだ商品情報を持っておきたいと思っています。 そのくらいのことならセッションもしくはCookie(期限短め:場合によってはブラウザ閉じるまで)でいいんじゃないですかね。 #わ...

>>続きを読む

一つの目安として、ECサイトの購入情報など絶対に消えてはいけないものはDBに、カートなどの一時的に使用する情報や、ユーザに任意のタイミングで消去されても構わないものはセッションにと使い分けるといいでしょう。

▲解説者:岡本(アシアル株式会社 教育コーディネーター兼 システムエンジニア)