はじめての自宅サーバ構築 - Fedora/CentOS -
Last Update 2018/05/30
[ 更新履歴 ] [ サイト マップ ] [ 質問掲示板 ] [ 雑談掲示板 ] [ リンク ]
トップ >> 当サイト情報 >> スレッド

このページは表示専用です。新規投稿・レスや最新情報はこちらです。

このスレッドはクローズされています。記事の閲覧のみとなります。

 バーチャルホストで複数のブログの管理
日時: 2006/07/03 10:59
名前: hideto

hidetoです。
先日はバーチャルホストの件で大変お世話になりました。
無事設定も完了し、稼働させることができました。本当にありがとうございました。

今度はバーチャルホストとMovableTypeの件で質問させてください。

バーチャルホストで「main.com」「aaa.com」「bbb.com」「ccc.com」としている状態で
MovableTypeを用いてそれぞれのドメインでブログを構築したいと考えているのですが、
MT本体はそれぞれにインストールしないといけないのでしょうか?
例えば「main.com」にMT本体をインストールし、複数のブログを構築してそれぞれの出力先を「aaa.com」「bbb.com」「ccc.com」にするといったことはできないのでしょうか。

どうぞご指導よろしくお願い致します。

■ コンテンツ関連情報

 Re: バーチャルホストで複数のブログの管理 ( No.1 )
日時: 2006/07/04 12:02
名前: 管理者

複数のブログ作成まで検証していないので細かくはお答えできませんが、管理画面の右にある「システム・メニュー」に「ブログ」をクリックすると「ブログを新規作成」と言うのがあると思います。

ここで、ブログを新しく作成して以下のパスに各ブログを割り付ければ、バーチャルホストで「main.com」「aaa.com」「bbb.com」「ccc.com」での公開は可能と思われます。
ここで「Aブログ」を「/var/www/html/blog_a/」というパスに作成
「Bブログ」を「/var/www/html/blog_b/」というパスに作成
「Cブログ」を「/var/www/html/blog_c/」というパスに作成
          :
          :
 Re: バーチャルホストで複数のブログの管理 ( No.2 )
日時: 2006/07/04 18:38
名前: hideto

管理人様、回答ありがとうございます。

昨夜自宅のサーバで実験してみました。
MovableTypeをインストールしたのは「/home/main/mt/」で、「http://main.com/mt/blog/」でMTのhtmlが表示される状態になっています。
が、ブログを「/home/aaa/public_html」に新規作成すると、下記のようなエラーが出ます。

「/home/aaa/public_html/index.html.new」への書き込みに失敗しました: ローカル・ファイル/home/aaa/public_html/index.html.newが開けません: Permission denied

おそらく「main」の所有者は「main」、「aaa」の所有者は「aaa」なので、その辺のパーミッションの違いかとは思うのですが、この所有者をすべて同じにすることは可能ですか?
 Re: バーチャルホストで複数のブログの管理 ( No.3 )
日時: 2006/07/04 19:46
名前: 管理者

「/home/main」のパーミッションと同様に「/home/aaa」にしてみては如何でしょうか?
※:「/home/main」配下のパーミッションも「/home/aaa」配下に適用してください。

気になっているのが、「/home/main」での公開しているブログは、ユーザホームページですか?
例えば、apacheデフォルトDocumentRootの「/var/www/html」の配下に、
  「/var/www/html/main」→「http://main.com/」
  「/var/www/html/sub」→「http://sub.com/」
             :
             :
の様にした方が、後々に宜しいかと思いますが・・・・
 Re: バーチャルホストで複数のブログの管理 ( No.4 )
日時: 2006/07/05 10:02
名前: hideto

管理人様、いつも回答ありがとうございます。

とりあえず、下のように整理してみました。

apacheの設定は、
User nobody
Group nobody
DocumentRoot "/var/www/html"としています。
バーチャルホストのDocumentRootは、管理人様のおっしゃるように/var/www/htmlの下に作成・変更しました。
(意味を履き違えていたらごめんなさい)


また、今までは「main.example.com」「aaa.dip.jp」「bbb.dip.jp」「ccc.dip.jp」
(投稿時の例からちょっと変更しました)に、それぞれ

「main.example.com」…ユーザfedoraで、/var/www/html/fedora/ディレクトリを使用
「aaa.dip.jp」「bbb.dip.jp」「ccc.dip.jp」…それぞれaaa,bbb,cccというユーザを作り、ディレクトリを/var/www/html/以下に作成

としていたのを、

・ユーザの削除(aaa,bbb,ccc)
・fedora,aaa,bbb,cccディレクトリを削除し、rootで/var/www/html/以下にmt,aaa,bbb,cccのディレクトリを改めて作成。
(WinSCPではディレクトリの所有者がrootになっている状態)
・/var/www/htmlにはダミーのhtmlファイルを置き、「main.example.com」でそのhtmlが表示可能な状態に。
・rootとして、/var/www/html/mt/にmovabletypeのシステムをインストール

としました。


以下はバーチャルホスト部分の記述です。(必要ないかもしれませんが、一応…)

NameVirtualHost 192.168.1.8:80
<VirtualHost 192.168.1.8:80>
  ServerName main.example.com
</VirtualHost>
<VirtualHost 192.168.1.8:80>
  ServerName aaa.dip.jp
  DocumentRoot /var/www/html/aaa
  ErrorLog logs/aaa-error_log
  CustomLog logs/aaa-access_log combined env=!no_log
</VirtualHost>
<VirtualHost 192.168.1.8:80>
  ServerName bbb.dip.jp
  DocumentRoot /var/www/html/bbb
  ErrorLog logs/bbb-error_log
  CustomLog logs/bbb-access_log combined env=!no_log
</VirtualHost>
<VirtualHost 192.168.1.8:80>
  ServerName ccc.dip.jp
  DocumentRoot /var/www/html/ccc
  ErrorLog logs/ccc-error_log
  CustomLog logs/ccc-access_log combined env=!no_log
</VirtualHost>


この状態でmovabletypeの管理画面から新規ブログを/var/www/html/aaaに作成してみたのですが、
「/var/www/html/aaa/index.html.new」への書き込みに失敗しました: ローカル・ファイル/var/www/html/aaa/index.html.newが開けません: Permission denied
というように、同じエラーがでてしまいました。


自分なりにいろいろやってみたのですが、根本的に間違っているのでしょうか…?

>「/home/main」のパーミッションと同様に「/home/aaa」にしてみては如何でしょうか?
>※:「/home/main」配下のパーミッションも「/home/aaa」配下に適用してください。


このパーミッションの設定を変更するというのは、上記で記している”aaaなどのユーザを削除してすべてのディレクトリをrootで作り直す”というのとは違いますでしょうか?
(WinSCPでみると、それぞれのディレクトリの所有者はrootになっています)

>
>気になっているのが、「/home/main」での公開しているブログは、ユーザホームページですか?
>例えば、apacheデフォルトDocumentRootの「/var/www/html」の配下に、
>  「/var/www/html/main」→「http://main.com/」
>  「/var/www/html/sub」→「http://sub.com/」


こちらについては、上記の通りディレクトリ構成を修正してみました。こういうことでよろしいのでしょうか?


一生懸命学ぼうと頑張っているのですが、なかなかこちらの欲する情報に合致するものがなく、
管理人様にはお手数をおかけして大変申し訳ありません。
どうぞ勉強のために教えて頂けたらと思います。どうぞよろしくお願い致します。
 Re: バーチャルホストで複数のブログの管理 ( No.5 )
日時: 2006/07/05 13:00
名前: 管理者

当方でMTを構築してみました。

まず、apache設定ファイルについてですが、「User」と「Group」を『nobody』にしている理由は何でしょうか?
特に理由がない限り、デフォルトでは『apache』ですので変更した方が良いと思います。

次に「Permission denied」が出る理由は、MTが書き込もうとしているパスの「オーナ:グループ」が『root』で、且つOtherに書き込み権がない為と思われます。

「/vaw/www/html/mt」「/vaw/www/html/aaa」「/vaw/www/html/bbb」「/vaw/www/html/ccc」のパスのパーミッションを757にすれば問題ありませんが、全般的に以下の様にするのが理想です。


?先述しましたが、理由がない限りapache設定ファイルの「User」と「Group」を『apache』にする。(変更後、httpd再起動)
?「/var/www/html」配下以下のパスの所有者:グループを『apache』にする。
?上記同様の「/var/www/html」配下以下のパスのパーミッションは755にする。
?mtにて各パスにブログを作成する。

※:以下がパスのイメージ(オーナ:グループ・パーミッションをご覧下さい)
# ls -l /var/www/html/
合計 24
drwxr-xr-x 2 apache apache 4096 7月 5 08:32 aaa
drwxr-xr-x 2 apache apache 4096 7月 5 08:29 bbb
drwxr-xr-x 2 apache apache 4096 7月 5 08:29 ccc
drwxr-xr-x 13 apache apache 4096 7月 5 08:18 cgi-bin
-rw-r--r-- 1 apache apache 102 7月 5 06:56 index.html
drwxr-xr-x 2 apache apache 4096 7月 5 08:22 mt

※:以下がサービス(プロセス)実行者のイメージ(httpdプロセスが「apache」で起動されている。ただし親プロセスは「root」)
# ps -ef | grep httpd
root   6324   1 0 08:36 ?    00:00:00 /usr/sbin/httpd
apache  6327 6324 0 08:36 ?    00:00:00 /usr/sbin/httpd
apache  6328 6324 0 08:36 ?    00:00:00 /usr/sbin/httpd
apache  6329 6324 0 08:36 ?    00:00:00 /usr/sbin/httpd
apache  6330 6324 0 08:36 ?    00:00:00 /usr/sbin/httpd
apache  6331 6324 0 08:36 ?    00:00:00 /usr/sbin/httpd
apache  6332 6324 0 08:36 ?    00:00:00 /usr/sbin/httpd
apache  6333 6324 0 08:36 ?    00:00:00 /usr/sbin/httpd
apache  6334 6324 0 08:36 ?    00:00:00 /usr/sbin/httpd
root   6669 1969 0 08:45 pts/0  00:00:00 grep httpd




バーチャルホストについては投稿頂いた内容で問題ありませんが、IP部分を"*"アスタリスクにした方が無難です。(以下参照)

NameVirtualHost *:80
<VirtualHost *:80>
  ServerName main.example.com
</VirtualHost>
<VirtualHost *:80>
  ServerName aaa.dip.jp
  DocumentRoot /var/www/html/aaa
  ErrorLog logs/aaa-error_log
  CustomLog logs/aaa-access_log combined env=!no_log
</VirtualHost>
<VirtualHost *:80>
  ServerName bbb.dip.jp
  DocumentRoot /var/www/html/bbb
  ErrorLog logs/bbb-error_log
  CustomLog logs/bbb-access_log combined env=!no_log
</VirtualHost>
<VirtualHost *:80>
  ServerName ccc.dip.jp
  DocumentRoot /var/www/html/ccc
  ErrorLog logs/ccc-error_log
  CustomLog logs/ccc-access_log combined env=!no_log
</VirtualHost>


上記以外のご質問では特にhidetoさんが理解された内容で相違ありません。(ユーザを削除した部分も含めて)


正常に動作すれば以下のアクセス方法で個別のページが表示されるはずです。

「http://main.example.com」   →  ダミーのhtmlファイルが表示
「http://main.example.com/mt」 →  「メイン」ブログ画面表示
「http://aaa.dip.jp」      →  「aaa」ブログ画面表示
「http://bbb.dip.jp」      →  「bbb」ブログ画面表示
「http://ccc.dip.jp」      →  「ccc」ブログ画面表示
 Re: バーチャルホストで複数のブログの管理 ( No.6 )
日時: 2006/07/05 14:26
名前: hideto

管理人様、わざわざMTを入れて構築してくださったんですね。
レスを見て感動しました。本当にありがとうございます!
是非とも試してみたいと思います。

非営利でこれだけ親身に回答してくださった方は初めてです。
感謝しております。涙が出るほど嬉しいです。ありがとうございました。

…また壁にぶち当たりましたら、質問させて頂いていいですか?
すみませんが、そのときはまたどうぞよろしくお願い致します。本当にありがとうございました。
 Re: バーチャルホストで複数のブログの管理 ( No.7 )
日時: 2006/07/05 22:35
名前: 管理者

不明点がありましたら、遠慮せずにご投稿下さいね。

当方で分かる限りご回答したいと思います。
また、閲覧者の方よりより良いアドバイスが頂けると思います。

これからも、よろしくお願い致します。

■ その他

ページ先頭へ


Copyright(©)2004-2018 First home server construction. All Right Reserved.