Lampを利用したWebサーバとWebサイトの立ち上げ方法

このQ&Aのポイント
  • Linux, Apache, Mysqul, PHPを利用してWebサーバとWebサイトを立ち上げる方法について説明します。
  • 自前のホームページで既製品のシステムを併用するために、Webサーバに/var/www/index.htmlと/var/www/e-learningを設置します。
  • index.htmlのtop-pageから既製プログラムのシステムに移る際に時間がかかる問題を解決するために、2台のパソコンに分けてWebサーバを構築し、ドメイン名を振り分ける方法を検討しています。
回答を見る
  • ベストアンサー

Lamp

Linux, Apache, Mysqul, PHPを利用してWebサーバとWebサイトを立ち上げようとしています。 自前のホームページでE-learningのような既製品のシステムを併用して使いたいために、Webサーバーに /var/www/index.html (自前のサイト) /var/www/e-learning /(既製プログラムのシステム) を入れ、試しにindex.html(自前のwebサイト)のtop-pageに既製プログラムのシステムに繋がるようにhttp://example.com/e-learningとリンクを張ってみました。Windows7のInternet Explorerで動作を確かめたら、両サイトとも問題なく機能はするのですが、top-pageからe-learningのシステムに移るのに1分ほどかかります。(ちなみにフリーソフトのOperaではすぐに反応しますが・・・なんせ、パソコンの使用者の大半がwindowsですのでExplorerをベースにしざる得ない。) 私の拙い能力では、自前のサイトと既製プログラムのシステムを2台のパソコンに分けて入れ firewall(public address) ↓ WebServer1(private address) + WebServer2(private address) と上記のネットワークを作り、WebServer2にドメイン名を新たに取得して WebServer1 = example.com WebServer2 = newdomain.com のようにして振り分けるのがベストなのかなと悩んでいるところです。この2つのサイトを効率よく作動させるに、何かよい方法があれば教えて頂きたく投稿しました。 尚、見よう見真似でネットワークを作っているため、ど素人です。初心者に教える回答をして頂くよう希望いたします。

noname#202629
noname#202629

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

  • ベストアンサー
  • wingstar
  • ベストアンサー率37% (102/275)
回答No.9

#1です。 別に喧嘩を売っているわけではないので、冷静に私の最初の回答を読んで下さい。 初心者では到底1分かかる原因を追求することはできないと判断したための回答です。 つまり、私もインフラのプロであるからして、出来るだけ原因を探りたいと思いますが、いかんせんここは文字だけの世界。 あなたが困っていることについては、あらゆる原因が想定されるのと、それを追求できるレベルではないので、専門業者を頼った方が良いと思います。 実際、私もその環境を自分の目で確認して、何がどうなっているのか見てみないことには、正直難しい問題です。 初心者だからと馬鹿にしているわけではありません。 プロでも実環境見ないと分からないレベルだと思っています。 回答ではないですが、プロからのアドバイスだと思って、素直に、そして冷静に専門業者に見てもらって下さい。 ちなみに、1分かかる原因を探るためには、まずは私ならある程度のブラウザーで試して、次にパケットキャプチャーやサーバのログなどを徹底的に分析します。 そして、e-learningのプログラムで何か特殊なことをやっていないか確認します。 これをやらないと原因が掴めません。 これをあなたが全て検証して原因を追求しなければいけませんが、「初心者」を自称するあなたにできますか? だから、回答にならない回答になってしまったのです。 気分を害したなら申し訳ないです。

noname#202629
質問者

お礼

ご指摘のようにmoodleを自前のサイトに入れようとしておりました。 質問の際にmoodleと入れようか迷ったのですが、否定的な投稿のみで期待できる回答を得るのは無理だろうと考えe-learningとしました。 http://example.com/moodle/ とリンク先を変えたら問題は解決しました。 DocumentRoot "/var/www/moodle/"でしたか・・・・基本中の基本に気がつきませんでした。 これじゃ誰かさんに野次られても仕方がありませんよね。 貴兄の助言は自前のWebサイトを運用するかも含め真摯に受け止めさせて頂きます。 これで一歩先に進めることは確かです。 監視ツールの情報を含め的確な回答に感謝いたします。 ありがとうございました。

その他の回答 (8)

  • bakaok
  • ベストアンサー率22% (33/148)
回答No.11

>bakaokさん。後ろ向きな事ばかり述べているサイト(勿論、内容については否定はしませんが)ばかり添付しないで、私の質問に技術的に納得できる回答をされてみてはいかがですか? 後ろ向きも何も最低限のことすらできてない質問者なんだから仕方がない。 サーバ公開は注意して注意しても注意しすぎる事はない。絶対的な注意方法が無いから 素人はそれを理解できない。だから「後ろ向き」と思えるのでしょう。 そんなに自信過剰でいられるなら質問者はIPアドレスと住所/氏名を公開しておいてください。そのIPアドレスから一回でも攻撃らしき物があったときのために。 それと四則演算すらできない人に方程式をいきなり教えろと言われて教えることができますか? それと同じ事です。 >なるほどと思える、回答を貴方が出来るとは思っていませんが、今後、初心者に同様の投稿をなさる前にtryをしてみてください。 それは無理。だって#10で書かれているとおりに情報が少なすぎから。

  • wingstar
  • ベストアンサー率37% (102/275)
回答No.10

すみません。 補足です。 mpstatsやiostatsコマンド、MRTGやCactiなどの監視系のツールを使って、2台本当にいるのか、負荷が本当に高いのか、そういうのも調査する必要があると思います。 でも、一番疑わしいのは、ネットワークですかね。 これ以上は、正直わかりません。 ちなみに、e-learingとは、具体的に何でしょうか? フリーのMoodleとかありますが、それとは違うのですか? そういう情報も無いと、そのソフトが原因だった場合、バグなどの情報も調べることができません。 つまり、情報があまりに足りなすぎるし、ここで回答も難しいと思います。

  • bakaok
  • ベストアンサー率22% (33/148)
回答No.8

>あっ、サーバを乗っ取られたときの対処方法だけど、とにかく一秒でも早くネットワークケーブルをはずす! この乗っ取られたことが認識できるレベルの人はこんな質問しないでしょう。

  • dscripty
  • ベストアンサー率51% (166/325)
回答No.7

>まず、1分かかる原因は追求する気がないのでしょうか? Operaが問題なく反応してexploreが遅いということであれば。通常 は後者の機能が劣っていると考えます。 一般的な「通常」の感覚が通用しない分野だと思ってあきらめて! じゃあどう考えるかだけど、 どちらのブラウザでも同じように、何かサーバからの返答を待っているけど、Opera は、諦めるのが早くて、IE7 は、諦めが悪くてずっと一分間待ちつつけている。 ってかんがえるよ? で、この原因の特定がとても重要で、これを追求しないなんてあり得ないことなんだ。 どういうことかというと、問題を取り除くにしても、回避策をとるにしても、問題が特定されてなければ、どうすれば正解なのかわからないから。 つまり、質問者さんの質問に対して、質問者さんが期待するような回答はだれもできないということ。 じゃあどうするかというと、 回答しない。 わからないことだらけだから、質問者さんを質問攻めにする。 わからないことだらけだけれど、質問者さんに質問しても有効な回答が得られないと思って、より一般的な回答をする。 諦めることを進める。 かな? 最後に、現状、無限に感じるほどある可能性のなかで、論理的に推測したわけじゃなくて、なんの根拠もない当て推量だけど、、、 top ページに書かれているリンクを http://example.com/e-learning ではなくて http://example.com/e-learning/ で試してみて! あたりの可能性としては、0.001% ?位の気持ちで。 あっ、サーバを乗っ取られたときの対処方法だけど、とにかく一秒でも早くネットワークケーブルをはずす!

noname#202629
質問者

お礼

今気がつきました。No1さんと貴兄さまが同一人物と思い込みNo1さんにポイントを差し上げてしまいました。 大変失礼しました。 おかげさまで example.com/moodle/ で問題が解決しました。 1週間ほど何か手立てはないかと悩んでいましたがスラッシュを入れることに気がつくことはなかったと思います。0.001%の確率がドンピシャの100%とは・・貴兄の知識と洞察力の高さに圧倒されました。ほんとうに助かりました。重ねて御礼申し上げます。 今後もよろしくお願い申し上げます。 ps:何か異変があればケーブルをはずすことは肝に銘じておきます。

  • bakaok
  • ベストアンサー率22% (33/148)
回答No.6

>Linux系で質問をすると貴兄のような回答が多いですね・・・このジャンルで質問をするといやな思いをするのは私だけですかね・・・勉強しないと質問しちゃいけないんですか? どうしてそのような返答がくるのかすら理解できないほど素人なんですね。 サーバ公開による危険性と他人がうける迷惑を理解できないのですね? この程度の事を自分で解決できないほどの素人によるサーバ公開は サーバが乗っ取られて踏み台利用されるから他人に迷惑になる。 サーバが乗っ取られてそれで質問者の個人情報や機密情報を流出させるだけなら自業自得だからご自由にどうぞだけど、実際にはサーバが乗っ取られたら場合そのサーバを踏み台にして他人や他社に迷惑が行くから素人によるサーバ公開は迷惑なんだよ。

noname#202629
質問者

お礼

bakaokさん。後ろ向きな事ばかり述べているサイト(勿論、内容については否定はしませんが)ばかり添付しないで、私の質問に技術的に納得できる回答をされてみてはいかがですか? それであれば貴兄の意見を聞く人が増えて、貴兄にとって住み易い?世の中になるかもしれませんよ。 なるほどと思える、回答を貴方が出来るとは思っていませんが、今後、初心者に同様の投稿をなさる前にtryをしてみてください。 良い勉強になりますよ。

回答No.3

なぜ自前でサーバを運用する必要があるのですか? > Linux, Apache, Mysqul, PHPを利用して ということから考えると、どこかのPaaSで十分のように感じます。 そちらを検討してみては。

  • bakaok
  • ベストアンサー率22% (33/148)
回答No.2

>見よう見真似でネットワークを作っているため、ど素人です。初心者に教える回答をして頂くよう希望いたします。 http://tmaeda.s45.xrea.com/20041101.html 初心者はまずここを読みましょう。 ここにすべての答えが書かれています。

noname#202629
質問者

お礼

あなたも最初は初心者じゃなかったんですか? つまらない回答は控えていただけたら幸いです。

  • wingstar
  • ベストアンサー率37% (102/275)
回答No.1

> top-pageからe-learningのシステムに移るのに1分ほどかかります。(ちなみにフリーソフトのOperaではすぐに反応しますが・・・ まず、1分かかる原因は追求する気がないのでしょうか? > 私の拙い能力では、自前のサイトと既製プログラムのシステムを2台のパソコンに分けて入れ 2台に分ける理由は何ですか? 最初の1分かかる原因が、「過負荷」であれば効果はあるでしょうけど、その原因がわかってないのに、最初から決めつけるのは、どうかと思います。 あと、Webサーバ2台にしたところで、ロードバランスする手法は? DNSラウンドロビン?ロードバランサー導入?その他? > ど素人です。初心者に教える回答をして頂くよう希望いたします。 初心者に教えるようなレベルじゃないような気がしますが…

noname#202629
質問者

お礼

>まず、1分かかる原因は追求する気がないのでしょうか? Operaが問題なく反応してexploreが遅いということであれば。通常は後者の機能が劣っていると考えます。 自分のサイトを効率よく動かしたいだけです。 >2台に分ける理由は何ですか? 一台で2つじゃ負荷が掛かりすぎるのかな?そのために遅いのかなと?推測したまでです。 >初心者に教えるようなレベルじゃないような気がしますが… Linux系で質問をすると貴兄のような回答が多いですね・・・このジャンルで質問をするといやな思いをするのは私だけですかね・・・勉強しないと質問しちゃいけないんですか? すくなくともfirewallとwebサーバまでは仕上がっていますよ。 どこまで勉強すればご教授いただけるのですか・・・貴方の専門的な回答をいただければ、私の方が特殊ない分野では上かも知れませんよ。(そんなことは無いとおもいますがね) 御免なさい。教える気がなければ投稿しないでください。

関連するQ&A

  • smartyのインストールについて

    smartyのインストールについて 下記のサイトを参考にセットアップしていますが、自分の環境との読み替えに困っています。 http://www.smarty.net/manual/ja/ 例 2-6. ファイル構造 /web/www.example.com/ guestbook/ templates/ index.tpl templates_c/ configs/ cache/ htdocs/ index.php 例 2-8. /web/www.example.com/guestbook/templates/index.tpl 例 2-9. /web/www.example.com/docs/guestbook/index.php の編集 例 2-10. /php/includes/guestbook/setup.php 例 2-11. /web/www.example.com/guestbook/htdocs/index.php 私の環境はCentOSのデフォルトを基調としていて、DocumentRootは/var/www/htmlとなっています。 上の例から行くと、 「/var/www/html」と「/web/www.example.com/guestbook/htdocs/」がイコールでDocumentRootかと思います。 →→「例 2-11.」は解決 「templates/」と「templates_c/」と「configs/」と「cache/」はDocumentRootと横ならび位置なので、 「/var/www/html/templates/」 「/var/www/html/templates_c/」 「/var/www/html/configs/」 「/var/www/html/cache/」 →→「例 2-6.」は解決 →→「例 2-8.」は解決 ここからが問題です。 例 2-9. /web/www.example.com/docs/guestbook/index.php よく見ると、何の前触れもなく「docs/」というディレクトリが登場しています。 「/var/www/」と「/web/www.example.com/guestbook/」が同じ関係とすると、 「/var/docs/」を作成して「/web/www.example.com/docs/」相当にする? 「/var/docs/guestbook/index.php」・・・何か気持ち悪い。 「/var/www/docs/guestbook/index.php」・・・こっちの方がマシか、でもこの場所に関して何も出てこないので、まさかの置きっぱなし?どこから参照されるのか? 例 2-10. /php/includes/guestbook/setup.php これも、どこ?って感じです。 どなたか教えてください。

    • ベストアンサー
    • PHP
  • httpリダイレクトについて

    リダイレクトさせたくて、web.configを記述追加したいと考えています。 すでにある(1)にリダイレクトの(2)を入れたいのですが、どう記述すればよいのでしょうか? この辺の知識が全くなくて、いろいろ調べてここまでたどりつきました。 全くの検討違いでしたら、アドバイスお願いします。 (1) <system.webServer> <defaultDocument> <files> <clear /> <add value="index.aspx" /> <add value="index.html" /> <add value="index.htm" /> </files> </defaultDocument> </system.webServer> (2) <system.webServer> <httpRedirect enabled="true" destination="http://www.***.com/" /> </system.webServer>

  • プロキシでキャッシュされる/されないファイル?

    下記について教えていただけますでしょうか。 あるサイトの公開 URL を http://sub.example.com/ とします。 こちらの FTP アドレスは sub-2.domain.com となっていますが、公開URL は http://sub.example.com/ となっております。 FTP で sub-2.example.com にアクセスしたら、index.html と style.css がすでにあります(初期状態とします)。 http://sub.example.com/ と http://sub-2.example.com/ のどちらにアクセスしても、上記 index.html が表示されます。 次に、page.html を作成して、FTP で sub-2.example.com にアップロードしたら、 http://sub.example.com/page.html と http://sub-2.example.com/page.html のどちらにアクセスしても、上記 page.html が表示されました。 そこで、最初にあった index.html と style.css を変更したところ、 http://sub.example.com/ にアクセスしたら、初期状態のままで、反映されていません。 http://sub-2.example.com/ にアクセスすると、変更後の状態になっております。 page.html を変更した場合は、どちらもすぐに変更後の状態がになります。 phpinfo() をそれぞれのドメインで実行したところ、 http://sub.example.com/ では、 HTTP_VIA と HTTP_X_FORWARDED_FOR とが表示されており、プロキシを通っている模様。 (http://sub-2.example.com/ では出ていませんので、通常のアクセス時はプロキシを使用していないと言うことです) 上記の状態はどうやらプロキシのキャッシュが原因の様ですが、もしそうだとしたら、 なぜ元々ある index.html と style.css だけがキャッシュされて、 新たに作成した page.html はキャッシュされないでしょうか。 また、元々ある index.html と style.css も更新後にすぐに反映されるようにする方法はございますでしょうか。 よろしくお願い致します。

  • mod_rewriteの挙動が不可思議。ログをみると、余計に不可思議・・・お助けを・・・

    CentOS4、Apache2を使っています。 ============================================ http://example.com/hogehoge というリクエストに対して、 mod_rewriteで http://example.com/index.php?QS=hogehoge の結果を返すようにしたいと思っています。 (http://example.com/ に対しては、http://example.com/index.php?QS= の結果を返せばOK) ============================================ そこで、 「.htaccess」に <IfModule mod_rewrite.c> RewriteEngine on RewriteRule ^/(.*)$ /index.php?QS=$1 [L] </IfModule> と書いたのですが、 http://example.com/hogehoge にアクセスしたら、not foundになってしまいました。 Apacheのエラーログをみると、 File does not exist: /var/www/example.com/htdocs/hogehoge でした。 で、mod_rewriteのログをみると下記のようでした。 ========================== ***.**.***.*** - - [11/Feb/2008:22:37:25 +0900] [example.com/sid#b80e7dd8][rid#b81db290/initial] (3) [per-dir /var/www/example.com/htdocs/] strip per-dir prefix: /var/www/example.com/htdocs/hogehoge -> hogehoge ***.**.***.*** - - [11/Feb/2008:22:37:25 +0900] [example.com/sid#b80e7dd8][rid#b81db290/initial] (3) [per-dir /var/www/example.com/htdocs/] applying pattern '^/(.*)$' to uri 'hogehoge' ***.**.***.*** - - [11/Feb/2008:22:37:25 +0900] [example.com/sid#b80e7dd8][rid#b81db290/initial] (1) [per-dir /var/www/example.com/htdocs/] pass through /var/www/example.com/htdocs/hogehoge ========================== (1)「/var/www/example.com/htdocs/hogehoge -> hogehoge」 と (2)「applying pattern '^/(.*)$' to uri 'hogehoge'」 というのが、不思議です。 どこのサイトを見ても、 RewriteEngine on RewriteRule ^/abc/(.*)$ /new/$1 [R=301,L] のようにやっているので、 ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ (2)は 「applying pattern '^/(.*)$' to uri '/hogehoge'」のはずだと思うのですが・・・。 ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ かといって <IfModule mod_rewrite.c> RewriteEngine on RewriteRule ^(.*)$ /index.php?QS=$1 [L] </IfModule> としてみると、今度はhttp://example.com/ にアクセスされたときに500エラーとなってしまいまして。。。 上の☆で囲んだ部分の疑問が強いので、問題の切り分けができていないかもと重い、 このエラーの原因は深くまだつっこんでいません。 どうして、このようになってしまうのでしょうか? (1)の挙動は、なんかしらの設定によるのでしょうか? そして、どうすれば、一番上に書いた、希望している動作となるのでしょうか? 以上、どなたかお教えいただければ、幸いです。

  • (初級)require等で共通ファイルを読み込む場合のパスの書き方で…。

    単純な質問です。 定数ファイル等、共通のファイルを、サイト内のPHPファイル全てで読み込みたい場合の方法について。 example.com /index.php /[const]/main.php /[page]/index.php ※[ ]はディレクトリを表す サイトexample.comにおいて、 トップページ index.phpと、 /[page]以下のindex.phpで、 同じ定数ファイルを読み込みたいとします。 例では、/[const]/main.php を読み込もうとしています。 ------------------------------ index.phpのスクリプト内では、 require_once 'const/main.php'; ------------------------------ と書け、 ------------------------------ /[page]/index.phpのスクリプト内では、 require_once '../const/main.php'; ------------------------------ と書くことになるかと思います。 このとき、読み込むファイルのパスが両者で異なりますよね。 (「../」が有るか無いかで異なる) これを、共通化したいのですが、可能でしょうか? つまり、例えばですが、 require_once 'COMMON_FILE'; と書けば、どちらのスクリプトファイルにおいても、 正しいパスが読み込まれる、というような。 また、サイトドメインが変更されても、書き換えなくて済むようにしたいです。 (例)example.com → example.net へ移動しても、書き換え要らずの方法で、何か方法を教えて下さい。 とっても、初歩的なことをお聞きして、すみません。

    • ベストアンサー
    • PHP
  • URL2万行をHTMLファイルで保存したい

    以下のように2万行のURLがありますが、 これを片っ端からHTMLファイルでダウンロードするうまい方法はありませんか。 http://example.com/page.jsp?page=1 http://example.com/page.jsp?page=2    :略 http://example.com/page.jsp?page=19999 http://example.com/page.jsp?page=20000 2万アドレスへのハイパーリンクが記述されたHTMLファイル(↓)を自作し、 <a href="http://example.com/page.jsp?page=1">1</a><br> <a href="http://example.com/page.jsp?page=2">2</a><br> 「波乗野郎」みたいなWeb徘徊保存ソフトを使えばいけそうな気がしますが もっとシンプルな方法はありませんか。

  • トップページとindex.htmlが違いますが..

    for_example.web.fc2.com/とfor_example.web.fc2.com/index.htmlって違いますよね。 index.htmlに書いた内容がトップページ(web.fc2.com/)に行くと反映されてないんですが、 どうすれば反映されるようになるんでしょうか?

  • wordpressのサイトアドレスの設定について

    04webserverを使い 自宅サーバーを設置し、wordpressをインストールしたんですが wordpressのサイトアドレスの設定を WordPress アドレス (URL) http://www.example.xyz/wordpress サイトアドレス (URL) http://www.example.xyz/wordpress の時にはトップページの表示や投稿した記事は正常に表示されるのですが WordPress アドレス (URL) http://www.example.xyz/wordpress サイトアドレス (URL) http://www.example.xyz/ に変更するとトップページが404で表示できなくなりました index.phpを開き index.phpの中の require(‘./wp-blog-header.php’); を require(‘./wordpress/wp-blog-header.php’); と書き換えたんですがそれでも404になります 他に設定をどうすればいいのでしょうか? 04webserverは.htaccessの設定ができないらしく、 04webserver自身の設定もinde.phpがindex.htmlよりも先に表示するように 設定済みです

    • 締切済み
    • PHP
  • http → https リダイレクト

    【http://example.com】にアクセスしたら【https://example.com】へリダイレクトしたいのですが、indexファイルが【/var/www/html/index.html】にある場合、どのようにすればよいでしょうか?やり方はhttpd.confにリダイレクト指定をしても.htaccessファイルを用いても何でも結構です。記述方法がよくわからないのです。 ご存知の方、宜しくお願いします。

  • 初心者がプロのWebシステムを開発できるようになるPHPのeラーニング

    初心者がプロのWebシステムを開発できるようになるPHPのeラーニングサイトを教えてください。 実際に出向く学校だと東京在住ではない地方なので選択肢がありません。 あとは本か通信学習かeラーニングですが、動画などで見れると思うのでeラーニングを希望しています。 良いPHPのeラーニング講座を受講された方からの情報をお待ちしています。 宜しくお願いいたします。

    • ベストアンサー
    • PHP