• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:拡張子なしのファイルを稼働させる.htaccessの設定)

拡張子なしのファイルを稼働させる.htaccessの設定

mimzyの回答

  • ベストアンサー
  • mimzy
  • ベストアンサー率33% (32/96)
回答No.4

apache2.0では正規表現の扱いが違うようです。そこで本家で確認、 http://httpd.apache.org/docs/2.0/ja/sections.html <FilesMatch>のセクションをみると"ダブルコーテーションを使ってません。 そこでこれを試してください、 <FilesMatch \.php$> ForceType application/x-httpd-php </FilesMatch> この設定を.htaccessの最後に追加する際、最終行の改行をお忘れなく、 それをわすれると同じく500 error Internal Server Errorとなります。 <FilesMatch>を記述しない限りphpは正常に動いてるんでですよね? それだとMIMEタイプメディアの件は関係ないと思います。

choei
質問者

補足

ありがとうございます。 本来ならお礼の欄に書くべきところでしょうが、字数制限があるのでこちらでお許しください 早速教えて頂いたページのFilesMatchの欄も読みました http://httpd.apache.org/docs/2.0/ja/mod/core.html#filesmatch 例題のところでは"(ダブルクォーテーション)はあるのですが・・・ それはさておき、早速結果報告です <FilesMatch>を記述してもしなくても基本的にphpは正常に稼働しています "(ダブルクォーテーション)を付けても付けなくても動作は同じでした <FilesMatch ^test$> AddType application/x-httpd-php </FilesMatch> <FilesMatch \.php$> ForceType application/x-httpd-php </FilesMatch> とするとphpだけでなく、htmlファイルなどを表示させようとしても500 error Internal Server Errorがでます。 AddType application/x-httpd-php を記述すると同一ディレクトリ内全てのファイル(試したのはphp,html,gif)が500 error Internarl Server Errorとなるようで、下層ディレクトリ内のgifファイルは正しく表示されたもののphpファイルは500 error Internal Server Errorでした が、サーバー会社曰くAddTypeは使用可能とのことです AddType application/x-httpd-php .php と後ろを追加して試したのですが、この場合404 errorになりました <FilesMatch ^test$> ForceType application/x-httpd-php </FilesMatch> <FilesMatch \.php$> ForceType application/x-httpd-php </FilesMatch> 上のようにForceTypeに書き換えてみたら404 errorになりました testをtest.phpにして表示させたら表示するのでphp側のミスはないと思います これ以外で考えられるのが.htaccessの記述ミスなどですが、改行や記述位置などに問題があるのでしょうか。 AddHandler php5-script .php DirectoryIndex index.php index.cgi index.shtml index.html index.htm index.hdml .ht ErrorDocument 404 /404.html <FilesMatch ^test$> AddType application/x-httpd-php .php </FilesMatch> <FilesMatch \.php$> ForceType application/x-httpd-php </FilesMatch> としています。 最初のAddHandler php5-script .phpはphpをバージョン5で動かすための記述で、これを抜けばバージョン4になります これを付けた場合と付けていない場合の両方を試したのですが、結果はどちらも同じです この記述の中にどこか問題でもあるのでしょうか

関連するQ&A

  • htaccessのAddTypeが使えないサーバで.phpファイルを.htmlとして表示させる方法は?

    利用サーバではhtaccessのAddTypeが使えない機能制限があるそうで、サーバで.phpファイルを.htmlとして表示させることが、以下のhtaccessへの記述ではできません。 AddType application/x-httpd-php .php .html どこかに書いてあったので以下も試しましたがダメでした。 <FilesMatch "html$"> ForceType application/x-httpd-php </FilesMatch> どうにかして代替方法が欲しい状態でが何か良い方法がないでしょうか。 どうぞ宜しくお願い致します。

    • 締切済み
    • PHP
  • 拡張子を隠す方法について2

    以前拡張子を隠すご質問を行い、とりあえずやってみようと色々とやってみたのですが反映されずエラーになってしまいます。 調べた結果、共有サーバーのため.htaccessに制限がありました。 ◇ ご利用いただけない記述の例 DirectoryIndex 例:DirectoryIndex index.php index.shtml Digest認証 例:AuthType Digest mod_headers Header ディレクティブ 例:headers_module AddTypeの一部記述 AddType ディレクティブ 例:AddType application/x-httpd-php .php .html Options ディレクティブ 例:Options FollowSymLinks RewireEngineディレクティブ 例:RewriteEngine On 制限されているとは知らず試したものは ForceType application/x-httpd-php や AddType application/x-httpd-php なのですが、制限されている以上不可能なのでしょうか? php.iniは設定できるようです。 やりたいことはこのご質問と同じだと思うのですが http://soudan1.biglobe.ne.jp/qa5542492.html xxx.php を xxx のように拡張子を隠すのと xxx.php?id=123 を xxx.php/123 のようにGETで渡す番号だけにしたいということです。 何か設定で試したほうが良い方法がございましたら、どうかお知恵をお貸しください。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • .htaccessでの設定について

    はじめまして。 .htaccessの設定で質問があります。 .htaccessで「AddType application/x-httpd-php .html」と設定し、 PHPのファイルをhtmlの拡張子で表示するようにしています。 全てのファイルで.htmlがPHPとして動作しないように、 <Files index.html> AddType application/x-httpd-php .html </Files> としています。 上記の設定でindex.htmlだけPHPとして動作すると思いますが、 これをあるDirectoryのindex.htmlだけに限定することはできないのでしょうか。 具体的には、 /htdocs/index.html では、PHPとして動作し、 /htdocs/test/index.html では、PHPとして動作しないようにしたいのです。 よろしくお願いします。

  • 自分で書いた.htaccess添削してもらえませんか??

    こんばんわ。 最近.htaccessを使い始めたのですが、 どうも動いてはいるような気がするのですが 書き順、形式やそもそもおかしなところがあるのか 添削いただけないでしょうか。 よろしくお願いします。 ↓ここから DirectoryIndex index.php index.htm index.html index.cgi index.shtml ErrorDocument 403 http://sample.jp/error.php ErrorDocument 500 http://sample.jp/error.php ErrorDocument 404 http://sample.jp/notfound.php AddType audio/x-pn-RealAudio-plugin .rpm AddType audio/x-pn-realaudio .rm .ram AddType video/x-ms-asf .asf .asx AddType video/x-ms-wmv .wmv いかがでしょうか? よろしくお願いします。

    • ベストアンサー
    • PHP
  • .htaccessの中身が php5 CGI版で動かない

    拡張子htmlファイルをphpファイルと認識させる為に、 .htaccessで AddType application/x-httpd-php .html AddHandler x-httpd-php .html と書いて対応していました。 今まではサーバーのphpのバージョンがPHP4(DSO版)だったのですが、昨日サーバーのバージョンがPHP5(CGI版)になってから、上記のような.htaccessが機能しなくなってしまいました。 order deny,allow deny from all ↑ これはちゃんと動くので、.htaccess自体が拒否されてるみたいなことはないと思います。 AddType application/x-httpd-php .html AddHandler x-httpd-php .html ↑ このプログラムがPHP5 CGI版にて意図した動作とならないのです。 何か分かる方いらっしゃいましたら、宜しくお願い致します。

    • ベストアンサー
    • PHP
  • .htaccessの設定で,auto_prepend_fileを画像に対応させるには。

    今PHPでWebを作成しています。 サーバーはAPACHEで,.htaccessに <IfModule mod_php4.c> php_value include_path ".:./include php_value auto_prepend_file "login.inc" php_value auto_append_file "close.inc" </IfModule> Addtype application/x-httpd-php .html .php .inc .ihtml と書いて,.htaccess以下のディレクトリのphpや.incファイルに対して入るときはauto_prepend_fileを使用してlogin.incを呼ぶようにしています。 これに.gifを加えたいのですが,そのまま, Addtype application/x-httpd-php .html .php .inc .ihtml .gif とするとauto_prependは効くのですが,.gifファイルが文字として認識されます。 .gifに対してauto_prependを効かすにはどうすればいいのでしょうか。 よろしくお願いします。

  • .htaccessの中身が 動かない

    拡張子htmlファイルをphpファイルと認識させる為に、 .htaccessで AddType application/x-httpd-php .html AddHandler x-httpd-php .html と書いて対応していました。 ファストサーバーのキガント2です。 HTMLが入ってるフォルダと同じ場所に.htaccessを入れて見ましたが、 php5 DSO版版もCGI版もだめでした。 何か分かる方いらっしゃいましたら、宜しくお願い致します。

    • 締切済み
    • PHP
  • PHPファイルをHTMLの拡張子のまま表示させる

    PHPファイルのページを拡張子がHTMLのままで表示させたいのですが、 .htaccessで設定すると、ブラウザではダウンロードされてしまいます。 ファイルの配置やソースで間違っている所はありますか? フォルダ index.html .htaccess ソース(.htaccess) AddType application/x-httpd-php .htm .html サーバ さくらインターネット

    • 締切済み
    • PHP
  • htmlファイルの中のphp記述を実行したい(.htaccessでエラー 500)

     はじめまして。  拡張子がhtmlのファイルの中で、phpを実行したく、 htmlファイルを置くディレクトリに 下記の記述を書いた.htaccessを置いた所、ディレクトリ内のファイルがサーバエラー(500)で閲覧出来なくなってしまいました。 AddType application/x-httpd-php .php .html  ディレクトリや、ファイル名指定(deny allなど)の.htaccessなどは、正常動作するので、.htaccessが許可されていない・転送モードが違う等ではないと思います。  .htaccessの記述の中でも、記述によって許可する・しないの設定がサーバ側にあるのでしょうか?  また、.htaccessの記述違いなのでしょうか?  どなたかご教示いただけませんか?

    • ベストアンサー
    • PHP
  • htaccessを使って、~.htmlというファイル名でphpを実行さ

    htaccessを使って、~.htmlというファイル名でphpを実行させようとしてうまくいかず困っています。 状況は、 htaccessに、AddType application/x-httpd-php .htm .html を追加したところ、 ieだと、『ファイルのダウンロード - セキュリティの警告』というダイアログボックスが出てきます。 firefoxだと、『を開く』というダイアログボックスが出てきて、『次のファイルを開こうとしています:』『ファイルの種類 application/x-httpd-php』ということが書かれています。 対処方法を教えてください。

    • 締切済み
    • PHP