PHPのサーバでアクセスが急におそくなった原因を調べる方法

このQ&Aのポイント
  • PHPのサーバでアクセスが急におそくなった原因を調べる方法についてご質問です。
  • ApacheとLinux Redhat9で構築しているWebサーバーで、PHP4を使用している際にアクセスが遅くなりました。
  • hogehogehogeという関数とeregという部分に問題があるようですが、具体的な原因を特定するためにどのような調査手法を取ればよいでしょうか。
回答を見る
  • ベストアンサー

PHPのサーバでアクセスが急におそくなったのですが,原因を調べる方法。

こんにちは, 現在ApacheとLinux Redhat9でWebサーバーを構築しています。 サーバースクリプトはPHP4を使用しているのですが,急に遅くなりました。 遅くなった部分を調べてみると : hogehogehoge($a); : if (!ereg($a .....)) { print("error"); } : となっています。 それで,しらべてみたのですが,遅いのはhogehogehogeという関数なのですが,そこを「//」でコメントアウトすると今度はeregの部分で時間がかかっているようなのです。 <時間がかかっているとわかったのは,print_r("debug"); flush();という部分を入れて,表示させてみました> 他のphpではうまくいっているようなのですが,何がわるいのでしょうか? 情報として少ないのですが,よろしくお願いいたします。 <他の情報でわかるのあれば,返答いたしますので,よろしくお願いいたします。>

  • PHP
  • 回答数1
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • bonyamk
  • ベストアンサー率29% (49/166)
回答No.1

echo microtime(); を随所に入れて確実に処理がかかってる場所を特定してみてはどうでしょう? 質問の情報からだと・・・ eregの中の正規表現が複雑、もしくは変数が物凄く長いなどが考えられます

関連するQ&A

  • PHP PCアクセス制限

    PHPでの、PCアクセス制限です。 僕が運営しているサイトは、 PCでも閲覧が可能ですが、掲示板などの書込・閲覧は禁止しています。 <?php $ua = $_SERVER["HTTP_USER_AGENT"]; if(ereg("UP\.Browser|KDDI|DoCoMo|J-PHONE|Vodafone|SoftBank|MOT-|L-mode|DDIPOCKET|WILLCOM|PDXGW|ASTEL", $ua)){ print "携帯"; exit; } elseif(ereg("Opera|ibisBrowser",$ua) && !(ereg("(Win|Mac|Linux|FreeBSD|Solaris)", $ua))){ print "携帯"; exit; } else{ print "PC"; exit; } ?> で、PCと携帯を振り分けて、同じURLで、 別々の画面を表示します。 ですが、「Sleipnir」等の、ソフトウェアを使用すると、 携帯画面が表示できてしまいます。 ソフトウェアを使用しても閲覧が出来ないよう、 PHPで、他にいい方法はありませんか? 「.htaccess」だと、全体を禁止する事になってしまうので… PHPスクリプトで、お願いします。

    • ベストアンサー
    • PHP
  • phpをWEBサーバー上で実行できない

    現在,WEBサーバー上でコンタクトフォームを作り,PHPでメールに送信したり, ありがとうページにうつるプログラムを書いています。 内部サーバーで構築した時には,問題なく作動したのですが, WEBサーバーにうつしたところ 動かなくなってしまい,困っています。 具体的には, phpの内容がテキスト形式で表示されるだけで実行されません。 Apacheの設定かと思い,Apacheに設定したところ, ダウンロードを要求されるようになってしまいました。 ちなみに,OSは Scientific Linux release 6.1 (Carbon) です。 フォルダや,実行ファイルの権限は755に変更しています。 Apacheには, http://www.adminweb.jp/apache/php/ を参考にして情報を入れてみたのですが, 1.Windowsでないので,モジュールが無い(もしくは見つけられなかっただけ?) 2.PHPIniDir "c:/php"に従って,php.iniがある"/etc"を入力するとエラーが出ます。 ちなみに内部サーバーではApacheに設定をしなくても動作をしていました。 内部サーバーのOSはRed Hat Linux release 6.2 (Zoot)です。 もしかしたらOSの違いもあるのかと思ったのですが,そんなことはありうるのでしょうか。 原因となるような手がかりを教えていただければ幸いです。 よろしくお願いします。

    • 締切済み
    • PHP
  • RedHat7.1でapacheを使い、WEBサーバー公開したいが、公開できない。

    こんにちは Apacheについて悩んでいるものです。 現在、自宅サーバーを構築しようとシコシコとやっておりますが、LINUXをよくわかっていないので停滞しています。 それは、ローカルアドレス環境でWEBサーバーのページを開けないことです。 環境はRedHat7.1にApacheとPHP4をインストールし、サーバー自信から動作を確認しました。しかし、ほかのクライアントPCからブラウジングすると開かないのです。 なぜなのでしょうか。 FTPツールからもアクセスできないんですよね。 詳しい方、お助けください!

  • phpでアクセス権の設定

    RedHat9 Apache1.3+PHP4.4 メールの添付ファイルをphpを使って保存しようとしています。 .qmailを使ってメールを渡し、保存するまではできたのですが、 保存されたファイルは所有者がvpopmail、アクセス権が600になってしまい、これを変更できません。 chmodは使用できないようですし、ほかに何か方法はあるでしょうか? linux、phpともにあまり詳しくありません。 宜しくお願いいたします。

    • ベストアンサー
    • PHP
  • Linuxサーバに対するアクセスを調べたい

    Linuxサーバに対するアクセス解析を行いたいのですが、どのようなコマンドで、そのファイルを見ればいいのか全くわかりません。 ご存知の方、よろしくお願いします。 OSはRedhat7.2で、Apache、Tomcat等が動作しています。

  • PHPはどれを選ぶか?

    現在、サイトを作る仕事をしていますが、html、cssと簡単なJavascriptのみを制作し、 PHPの部分は他社の方と組んで完成させています。 そろそろ、自分でもPHPの勉強を始めたいと思っています。 ところが、PHPのバージョン選びについて、入門本と色々なサイトで書いてあることが異なったり、 情報の日付が古かったりする為最初の段階で混乱しています。 自身の開発環境は今のところ、windows xp、お客様で利用しているレンタルサーバーは Redhat系 Linux、Apacheが多いです。 ダウンロードサイト http://windows.php.net/download/ を見たら色々なバージョンがあったので、調べるうちにわからなくなってしまいました。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • PHPで使ったサイト、携帯端末対応可能でしょうか

    PHPで作ったWebシステムがありまして(OSはRedHat Linux、サーバは Apache)、これを携帯端末でも閲覧できるようにしたいと思っています が、PHPのプログラムは使えなくなりますでしょうか? 携帯向けの開発は初めてですが専門家の方がいらっしゃいましたら教え て下さい。宜しくお願いします。

    • ベストアンサー
    • PHP
  • Linux サーバーのセキュリティ

    Linux RedHat 7.1でWebサーバにセキュリティを入れたいのですが。 Apacheを考えてます。それより簡単な方法があるのでしょうか?

  • アクセス数を知りたいのですが・・・

    Linuxサーバー管理者です。 Webサーバー(apache)で、ホームページを公開しているのですが、 今までどのくらいのアクセス数があったが、調査したいのですが、 可能でしょうか? 他の人からは、ログを見れば集計できるんじゃない?とか言われたのですが、 そうなのでしょうか? どなたか、ご教授お願いします。 使用OS:Redhat Linux 7.1

  • 夜になるとアクセスできないサーバー

    こんにちは。 RedHat8.0で社内サイト用のシンプルなウェブサーバーを構築しました。昼間は何の問題もなく稼動しています。 が、夜になるとあちこちの社員から「アクセスできない」との声が聞かれ。サイトも、CGIを利用した掲示板にもアクセスできません。PINGすら返ってきません。 別に何も特殊な設定をしたわけではありませんし、朝にな ればまた普通に使えます。 夜になるとスリープ?になって朝になると目覚めるなんて設定があるのでしょうか?ちなみにhaltコマンドで本体の電源は落ちずに、画面に「電源をお切りください」とのメッセージがでるだけです。 Linux独自のシステム?Xwindowsの設定?NICの設定?などなど可能性のある原因がわからず困っております。もし何かご存知の方がおられましたら、どうか教えてください。 よろしくお願いします。 PowerEdge 600SC Redhat8.0 Apache2

専門家に質問してみよう