IEでDirectoryディレクティブで設定したPATHにアクセスすると、
「ファイルのダウンロード」ダイアログが表示されてしまいます。
正常にアクセスできるようにする方法を教えてください。
PHP5のconfigureスクリプトのオプション
./configure --with-apxs=/usr/bin/apxs --with-openssl=/usr --with-zlib --enable-mbstring --enable-trans-sid --without-sqlite --without-mysql
設定しているhttpd.confのディレクティブ(抜粋)
LoadModule php5_module /usr/lib/apache/1.3/libphp5.so
AddModule mod_php5.c
AddType application/x-httpd-php .php
<Directory "/usr/local/Hosting/xxxx/yyyy">
SetHandler php5-script
SetHandler default-handler
</Directory>
# 同じサーバ上でtomcat + mod_jk でアプリを動作させています。
<Directory "/usr/local/Hosting/xxxx">
DirectoryIndex index.jsp
</Directory>
SetHandler php5-script SetHandler default-handler
default-handler で上書きしてしまっているように見えます。
SetHandler php5-script
か、
AddHandler php5-script .php
と設定すればいいと思います。
組み込まれていました。下記を設定しています。
LoadModule mime_module /usr/lib/apache/1.3/mod_mime.so
http://mm.apache.jp/pipermail/apache-users/2002-May/001329.html
Apache1.3では、Apacheが直接srm.confを参照してしまい、これが原因となる場合があるようです。
一度srm.confをリネームして読み込まないようにしてみてはいかがでしょうか
#mv /usr/local/apache/conf/srm.conf /usr/local/apache/conf/srm.conf.org
↓
apacheを再起動
srm.conf を srm.conf.org にしてApacheを再起動しましたが、ダメでした・・・。
apacheの再起動はエラーなどなく、正常に行われていますでしょうか。
だとすると、apacheにphpが組み込まれていないのかもしれないですね。
>--with-apxs=/usr/bin/apxs
apxsのパスが/usr/bin/となっていますがあっていますでしょうか。
間違っていたらconfigureの時点でエラーが出ると思いますが、エラーはでていなかったでしょうか。
再起動時のエラーはでないです。
apxsのpathは /usr/bin でした。
configureの最後は
Thank you for using PHP.
で終わりました。
SetHandler php5-script
では強力過ぎるのではないでしょうか
http://httpd.apache.org/docs/2.2/mod/core.html#sethandler]
『そこにあるすべてのファイルが handler-name で指定されたハンドラで扱われることを強制します。』とあります。ブラウザーはアイコンなども要求しますのでphpだけというのでは問題があるのではないでしょうか。
試しにローカルで動いている(Apache2)ものにSetHandlerを追加してみたところ同じようにダウンロードのダイアログが表示さました。
AddHandler php5-script .php
だけでいいように思います。
回答ありがとうございます。
どうやら、
AddHandler php5-script .php
SetHandler php5-script
SetHandler default-handler
の何れかを記述すると、
ダウンロードのポップアップが表示されてしまいます。
3つの記述すべて削除すると、ポップアップが表示されません。
しかし、
Include /etc/apache/conf.d
を有効にしているのでtomcatにリダイレクトされてしまい、実行できません。
JavaもPHPも実行できるようにする方法はないのでしょうか?
回答ありがとうございます。
SetHandler default-handler
の行を削除して再起動してもまだ、「ファイルのダウンロード」が表示されてしまいます。