システムやサーバーに詳しい方教えてください。

現在、PHPを使っていないけれど、将来的な拡張を考え、PHP形式でファイルを保存、アップロードしています。
PHP形式のファイルはHTML形式のファイルと比較して、サーバーに対する負荷はどのくらい変わってきますか?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2004/12/16 18:09:54
  • 終了:--

回答(5件)

id:ke_ishi No.1

ke_ishi回答回数269ベストアンサー獲得回数02004/12/16 18:15:29

ポイント30pt

http://pcweb.mycom.co.jp/articles/2004/05/17/apache/004.html

【レポート】Apache 2.0 + Kernel 2.6 + Pentium 4でマルチスレッド性能をはかる (5) 静的・動的コンテンツの処理能力による新旧プラットフォームの傾向 | エンタープライズ | マイコミジャーナル

動的ページ生成では6倍程度のパフォーマンス差があるようです。あまり参考にならないかもしれませんが

id:y_yamaguchi

ありがとうございます!

でも・・ごめんなさい、記事の内容が分からなかった(涙)

追記します。

phpファイルで保存したファイルに自分でアクセスした時に、なんとなく重いなーと感じたので、どのくらい負荷がかかってるか知りたいんです。

2004/12/16 18:54:21
id:TomCat No.2

TomCat回答回数5402ベストアンサー獲得回数2152004/12/16 18:34:44

ポイント100pt

これは拡張子.htmlのファイルの中に

PHPのタグを埋め込んでいる、

ということでしょうか。

でしたらそれはサーバとしては

単なるHTML形式のファイルとして送出しますから、

通常のHTMLファイルとサーバ負荷は変わりません。

読み出されたコードのPHPタグ部分は

ブラウザが解読不能タグとして無視します。

拡張子をphpとして、サーバがこれをscript言語として処理する場合は、

1のご回答の通り、それなりのサーバ負荷が生じてきます。

さらにサーバによっては通常のHTMLファイルの送出を優先し、

script言語の処理を後回しにする設定の所もありますから、

そういうサーバではさらにレスポンスが低下します。

どのくらいの低下が見られるかは、

その時々の全体的なサーバ負荷の状態によって変わります。

id:y_yamaguchi

ありがとうございます!

自分のホームページを作っている時に生じた疑問でして(http://memolog.jp)、ソースはhtmlファイルと変わらないのですが、一応php形式で保存しているんです。

拡張子を.htmlに変えるとそのままhtmlファイルとして使える状態です。

一般的に、無視できるくらいの負荷なのでしょうか。それともhtmlファイルに戻した方が良いのでしょうか。

2004/12/16 18:54:24
id:szkn No.3

szkn回答回数15ベストアンサー獲得回数02004/12/16 18:56:49

ポイント150pt

http://mikeneko.creator.club.ne.jp/~lab/web/htaccess/

$B%_%1%M%3$N(B htaccess $B%j%U%!%l%s%9(B

ke_ishiさんの回答のURLは

HTMLとPHPの場合の速度比較と、Apacheのバージョンによる速度比較を同時に行なっているモノです。

同じファイルに10000回アクセスし、1秒間にあたり何個のリクエストを処理したかで比較しています。

table-1とtable-2を見比べると、

(Apache 1.3)HTML : PHP = 1 : 6

(Apache 2.0)HTML : PHP = 1 : 12

という結果です。

ただし、これはApache 1.3と2.0の速度比較が目的であり、導かれる結果は、

「HTMLの場合はかなり違う、PHPの場合は殆ど一緒」

というモノです。

PHPファイルでは単純な計算を1000回、10000回のリクエストなので、10000000回の計算を行なっているので、ke_ishiさんのおっしゃるようにHTMLとPHPの比較にはなりません。

さて、本題です。と言っても完全な答えは提供できません。

・PHPが使える環境(サーバ)で

・PHPスクリプトを含まないファイルを

.htmlという拡張子(形式)でアップロードする場合と、.phpでアップする場合の速度差についての質問だと思います。

(.phpでアップする理由は、将来PHPスクリプトを使用した際に、URLを変更しないで済むようにでしょうか?)

具体的な速度差は環境によって異なりますが、速度差は絶対に出ます。

上記の環境では、.phpのファイルは、PHPスクリプトが含まれる可能性があるファイルとして扱われ…というよりもすべてPHPファイルとして処理されます。

PHPで、文字を出力するecho()という関数があるのですが、このファイルは、echo(ファイル全体)という、PHPスクリプトによって出力されています。

ですから、拡張子を.phpにした時点で、既にPHPを導入しているのです。

(かなり乱暴な理屈ですが、こう考えれば、速度差の理由をご理解戴けると思い、あえて暴論を書いています)

とりあえずの結論は、

「速度差はある、具体的数値は環境次第」

です。

これだけだと全くお役に立てていないと思うので、速度差を無くす方法を回答とさせていただきます。

(ただし、.htaccessが使える環境であるという前提になりますが)

解決策は、サーバに.phpのファイルをHTML形式だと認識させることです。具体的には、

[.htaccess]

AddType "text/html" .php

とすると、拡張子.phpのファイルもHTMLファイルとして扱われます。

将来、実際にPHPを使うようになった場合は、上の一行を削除すれば問題ありません。

逆に、現在の拡張子を.htmlにし、将来PHPスクリプトを導入した場合にも拡張子を.htmlままにし

[.htaccess]

AddType "application/x-httpd-php" .html

とすれば、拡張子.htmlのファイルもPHPとして扱われます。

もう1つ、これも.htaccessが使えると言う前提ですが・・・

URLを

でなく、

でアクセスさせる方法があります。

この場合、foo.htmlだけあればfoo.htmlを、foo.phpだけあればfoo.phpを、どちらもあれば、優先度の高い方が使用されます。

[.htaccess]

Options +Multiviews

AddType ”application/x-httpd-php; q=0.99” .php

AddType ”text/html; q=0.90” .html

とし、qに続く数字が優先度になります。

URLは著名な.htaccessの説明サイトです(残念ながら作者の方がご逝去なされたので、更新はされませんが)

いくつか、仮定が入ってますので、見当違いの回答になっていたら申し訳ありません。

長文、失礼いたしました。

id:y_yamaguchi

ありがとうございます!

そうです、いつの日かphpスクリプトを使いたくなったときにファイルネームを変更しないで導入できるように・・と思って.php形式で保存しています。

.htaccessは・・一度も設置したことがないので使えるかどうかは分からないのですが、できるとけっこう便利ですね!

とても参考になりました。ありがとうございます。

2004/12/16 19:04:26
id:Spawapawa No.4

Spawapawa回答回数54ベストアンサー獲得回数02004/12/16 18:59:14

ポイント30pt

PHPのスクリプトを使用していない場合(静的コンテンツ)でもサーバーソフトがPHPスクリプトファイルとして見ている場合は少なからず無駄な負荷を掛けているかもしれません。もちろん、PHPスクリプトをページ内で使用している場合(動的コンテンツ)サーバー負荷はそれより上がります。なので、静的コンテンツのみならHTMLファイルにしたほうがサーバー負荷は軽くなるでしょう。

id:y_yamaguchi

ありがとうございます!

悩ましいところですね、とらぬ狸の・・と言いますが、あまり考えすぎずにhtmlファイルにしてしまうべきか・・

2004/12/16 19:24:03
id:hebe No.5

hebe回答回数43ベストアンサー獲得回数02004/12/16 19:24:03

ポイント30pt

> 将来的な拡張を考え、PHP形式でファイルを保存、アップロード

必要ないです。

サーバの設定一つで .html のファイルを PHP スクリプトとしてパースさせる事も可能ですし、対象のファイル名を一括で書き換える事も可能です。

それ以前に少しでも PHP で喰っている人間なら、例えば Smarty や Flexy を使って既存の html ファイルをテンプレートに見立て取り込むといったトリックを使う (処理対象に比例して直線的に作業量が増えるような方途は取らない) ので、具体的に今何をされているのか分かりませんが、ただの HTML ファイルを .php として設置させても意味がないように思えます。

id:y_yamaguchi

ありがとうございます。

「具体的に今何をされているのか分かりませんが」というのは・・何のことを言っているのか分かりませんが、とりあえず私はPHPで食っている人間ではありません。そういうトリックの仕方もあるわけですね。なるほどなるほど、参考になります。

2004/12/16 19:33:10

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

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

トラックバック

  • phpをhtmlに戻しました。 phpをhtmlに戻しました。 2006-03-13 16:12:33
    はてな:システムやサーバーに詳しい方教えてください。 とりあえず全てのページをPHPにするという行為は止めました。大なり小なりサーバーに負担がかかるという話と後で.htmlをphpとし
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

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

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません