So-net無料ブログ作成
検索選択

サブドメイン公開のための設定 [自宅サーバ[Fedora11]]

ようやく、公開用サブドメイン等の実装がうまくいったので、まとめてみます。
VirtualHostの乱用(?)になってしまいました。
とりあえず想定通りの動きをしているようなので、これまた様子見にはいります。

ついでにドメイン名公開しちゃいます。
いちいち伏せるの疲れてきました(笑)
アクセスしてもらった方が不具合発見しやすいですしね。
ある意味公開テスト…

とはいえ、今のところまともに見ることができるのはブログのみ…しかも未投稿です(汗


さてどうやってまとめましょう。

公開URLの一覧画像なぞ貼ってみます。
サブドメイン.png
↑こんな感じで構築します。

G…開発用(非公開)サーバgaruda
I…公開用サーバifrit

となってます。
garudaは外からは見ることができません。
httpsとか書いてあるのもありますが、未実装です。
adminもhttpsにする予定ですが、直し忘れてました(汗


●開発用(非公開)サーバgaruda側のconfファイル(anchor:configure_garuda)

まずは設定が簡単だったgaruda側から。
こちらはサブドメインの設定は無く、Aliasの記述でほぼ実装されてます。
基本設定は/etc/httpd/conf/httpd.conf、サイト独自の設定は/etc/httpd/conf.d/bcollet.confに記述しました。
cgi-binの記述もbcollet.confにしてあります。
・/etc/httpd/conf/httpd.conf
### Section 1: Global Environment

ServerTokens OS
ServerRoot "/etc/httpd"
PidFile run/httpd.pid
Timeout 120
KeepAlive Off
MaxKeepAliveRequests 100
KeepAliveTimeout 15

<IfModule prefork.c>
StartServers       8
MinSpareServers    5
MaxSpareServers   20
ServerLimit      256
MaxClients       256
MaxRequestsPerChild  4000
</IfModule>

<IfModule worker.c>
StartServers         2
MaxClients         150
MinSpareThreads     25
MaxSpareThreads     75
ThreadsPerChild     25
MaxRequestsPerChild  0
</IfModule>

Listen 80

LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_alias_module modules/mod_authn_alias.so
#LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
#LoadModule ldap_module modules/mod_ldap.so
#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule include_module modules/mod_include.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule ext_filter_module modules/mod_ext_filter.so
LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule expires_module modules/mod_expires.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
LoadModule usertrack_module modules/mod_usertrack.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule mime_module modules/mod_mime.so
#LoadModule dav_module modules/mod_dav.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule info_module modules/mod_info.so
#LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule dir_module modules/mod_dir.so
LoadModule actions_module modules/mod_actions.so
LoadModule speling_module modules/mod_speling.so
LoadModule userdir_module modules/mod_userdir.so
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule cache_module modules/mod_cache.so
LoadModule suexec_module modules/mod_suexec.so
LoadModule disk_cache_module modules/mod_disk_cache.so
LoadModule cgi_module modules/mod_cgi.so

Include conf.d/*.conf

User apache
Group apache


### Section 2: 'Main' server configuration

ServerAdmin webmaster@bluishcollet.com
ServerName dev.bluishcollet.com:80
UseCanonicalName Off

DocumentRoot "/var/www/html"

<Directory />
    Order deny,allow
    Deny from all
</Directory>

DirectoryIndex index.htm index.html index.html.var index.php
AccessFileName .htaccess

<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
</Files>

TypesConfig /etc/mime.types
DefaultType text/plain

<IfModule mod_mime_magic.c>
    MIMEMagicFile conf/magic
</IfModule>

HostnameLookups Off

ErrorLog logs/error_log
LogLevel warn
LogFormat "%h %l %u %t \"%m http://%V%U %H\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%{Referer}i -> %U" referer

CustomLog logs/referer_log referer
CustomLog logs/access_log combined

ServerSignature Off

Alias /icons/ "/var/www/icons/"

<Directory "/var/www/icons">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable Charset=UTF-8

AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip

AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*

AddIcon /icons/binary.gif .bin .exe
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif core

AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^

DefaultIcon /icons/unknown.gif

ReadmeName README.html
HeaderName HEADER.html

IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t

AddLanguage ca .ca
AddLanguage cs .cz .cs
AddLanguage da .dk
AddLanguage de .de
AddLanguage el .el
AddLanguage en .en
AddLanguage eo .eo
AddLanguage es .es
AddLanguage et .et
AddLanguage fr .fr
AddLanguage he .he
AddLanguage hr .hr
AddLanguage it .it
AddLanguage ja .ja
AddLanguage ko .ko
AddLanguage ltz .ltz
AddLanguage nl .nl
AddLanguage nn .nn
AddLanguage no .no
AddLanguage pl .po
AddLanguage pt .pt
AddLanguage pt-BR .pt-br
AddLanguage ru .ru
AddLanguage sv .sv
AddLanguage zh-CN .zh-cn
AddLanguage zh-TW .zh-tw

LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru
sv zh-CN zh-TW
ForceLanguagePriority Prefer Fallback

AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl    .crl

AddHandler cgi-script .cgi .pl
AddHandler type-map var

AddType text/html .shtml .shtm
AddOutputFilter INCLUDES .shtml .shtm

Alias /error/ "/var/www/error/"

<IfModule mod_negotiation.c>
<IfModule mod_include.c>
    <Directory "/var/www/error">
        AllowOverride None
        Options IncludesNoExec
        AddOutputFilter Includes html
        AddHandler type-map var
        Order allow,deny
        Allow from all
        LanguagePriority en es de fr
        ForceLanguagePriority Prefer Fallback
    </Directory>
</IfModule>
</IfModule>

BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0

BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "MS FrontPage" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
BrowserMatch "^gnome-vfs/1.0" redirect-carefully
BrowserMatch "^XML Spy" redirect-carefully
BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully

・/etc/httpd/conf.d/bcollet.conf
NameVirtualHost *:80

# default
<Directory /var/www>
    AllowOverride All
    Options FollowSymLinks IncludesNoExec
    Order allow,deny
    Allow from all
    <LimitExcept GET POST OPTIONS>
        Order deny,allow
        Deny from all
    </LimitExcept>
</Directory>

# cgi-bin
ScriptAlias /cgi-bin/ /var/www/cgi-bin/

<Directory /var/www/cgi-bin>
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

# others
Alias /join/ /var/www/join/
Alias /support/ /var/www/support/
Alias /cpanel/ /var/www/cpanel/
Alias /blog/ /var/www/blog/

# user site
<IfModule mod_userdir.c>
    UserDir public_html
</IfModule>

<Directory /home/*/public_html>
    AllowOverride All
    Options FollowSymLinks IncludesNoExec ExecCGI
    <Limit GET POST OPTIONS>
        Order allow,deny
        Allow from all
    </Limit>
    <LimitExcept GET POST OPTIONS>
        Order deny,allow
        Deny from all
    </LimitExcept>
</Directory>

サイト独自の設定はほぼbcollet.confにあります。
DocumentRootのみhttpd.confに残してあるので、ちょっと判りにくいかも…

上記設定だと、ユーザフォルダではCGIが全面的に利用可能になります。
が、ルート以下ではCGIは利用できません。
ScriptAliasで指定しているcgi-binフォルダでのみ利用することになります。
ScriptAliasを指定するとExecCGIは不要なんですね。
いままで気にしたこともなかった…(汗

.htaccessによる設定の上書きは、cgi-bin以外で有効になるようにしています。

あとはログの記述をちょっと変更してあります。
デフォルトだとログは以下のようになります。
192.168.11.14 - - [05/Nov/2009:13:23:20 +0900] "GET /test.html HTTP/1.1" 200 349 "-" "Mo
zilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .NET CLR 1.1.4322; .NET CLR
2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath.1)"

これをhttp~の形式で出力するように変更しました。
192.168.11.14 - - [22/Nov/2009:17:27:36 +0900] "GET http://www.bluishcollet.com/test.html
HTTP/1.1" 200 349 "-" "Mo
zilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .NET CLR 1.1.4322; .NET CLR
2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath.1)"

変更前の記述だと、どのサブドメインでのアクセスか判別できなかったので、こんな感じにしてみました。


●公開用サーバifrit側のconfファイル(anchor:configure_ifrit)

公開用サーバの方のconfファイルです。
VirtualHostを多用しています。

CGI、.htaccess、ログに関してはgarudaと同じにしてあります。
ifritで悩まされたのはVirtualHostの順序でした。

ユーザサイトの記述(一番下です)で、ServerAliasに複数の設定をしてあります。
これはユーザ名をサブドメイン(ホスト名?)として用いてみたくてこのようにしてみたのですが…
この記述のおかげで、このディレクティブ自体が他より早い位置にあると、全部ユーザサイトへのアクセスと判定されてしまい、あげくNotFoundになってしまいます。
そのため、ユーザサイト関連のディレクティブは最後に記述することにしました。
最後に持ってくることで、他のサブドメインのVirtualHostを先に判定してくれるようになり、NotFoundとなることもなくなりました。

・/etc/httpd/conf/httpd.con
### Section 1: Global Environment

ServerTokens OS
ServerRoot "/etc/httpd"
PidFile run/httpd.pid
Timeout 120
KeepAlive Off
MaxKeepAliveRequests 100
KeepAliveTimeout 15

<IfModule prefork.c>
StartServers       8
MinSpareServers    5
MaxSpareServers   20
ServerLimit      256
MaxClients       256
MaxRequestsPerChild  4000
</IfModule>

<IfModule worker.c>
StartServers         2
MaxClients         150
MinSpareThreads     25
MaxSpareThreads     75
ThreadsPerChild     25
MaxRequestsPerChild  0
</IfModule>

Listen 80

LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_alias_module modules/mod_authn_alias.so
#LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
#LoadModule ldap_module modules/mod_ldap.so
#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule include_module modules/mod_include.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule ext_filter_module modules/mod_ext_filter.so
LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule expires_module modules/mod_expires.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
LoadModule usertrack_module modules/mod_usertrack.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule mime_module modules/mod_mime.so
#LoadModule dav_module modules/mod_dav.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule info_module modules/mod_info.so
#LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule dir_module modules/mod_dir.so
LoadModule actions_module modules/mod_actions.so
LoadModule speling_module modules/mod_speling.so
LoadModule userdir_module modules/mod_userdir.so
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule cache_module modules/mod_cache.so
LoadModule suexec_module modules/mod_suexec.so
LoadModule disk_cache_module modules/mod_disk_cache.so
LoadModule cgi_module modules/mod_cgi.so

Include conf.d/*.conf

User apache
Group apache


### Section 2: 'Main' server configuration

ServerAdmin webmaster@bluishcollet.com
ServerName www.bluishcollet.com:80
UseCanonicalName Off

DocumentRoot "/var/www/html"

<Directory />
    Order deny,allow
    Deny from all
</Directory>

DirectoryIndex index.htm index.html index.html.var index.php
AccessFileName .htaccess

<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
</Files>

TypesConfig /etc/mime.types
DefaultType text/plain

<IfModule mod_mime_magic.c>
    MIMEMagicFile conf/magic
</IfModule>

HostnameLookups Off

ErrorLog logs/error_log
LogLevel warn
LogFormat "%h %l %u %t \"%m http://%V%U %H\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" co
mbined
LogFormat "%{Referer}i -> %U" referer

CustomLog logs/referer_log referer
CustomLog logs/access_log combined

ServerSignature Off

Alias /icons/ "/var/www/icons/"

<Directory "/var/www/icons">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable Charset=UTF-8

AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip

AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*

AddIcon /icons/binary.gif .bin .exe
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif core

AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^

DefaultIcon /icons/unknown.gif

ReadmeName README.html
HeaderName HEADER.html

IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t

AddLanguage ca .ca
AddLanguage cs .cz .cs
AddLanguage da .dk
AddLanguage de .de
AddLanguage el .el
AddLanguage en .en
AddLanguage eo .eo
AddLanguage es .es
AddLanguage et .et
AddLanguage fr .fr
AddLanguage he .he
AddLanguage hr .hr
AddLanguage it .it
AddLanguage ja .ja
AddLanguage ko .ko
AddLanguage ltz .ltz
AddLanguage nl .nl
AddLanguage nn .nn
AddLanguage no .no
AddLanguage pl .po
AddLanguage pt .pt
AddLanguage pt-BR .pt-br
AddLanguage ru .ru
AddLanguage sv .sv
AddLanguage zh-CN .zh-cn
AddLanguage zh-TW .zh-tw

LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru
sv zh-CN zh-TW
ForceLanguagePriority Prefer Fallback
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl    .crl

AddHandler cgi-script .cgi .pl
AddHandler type-map var

AddType text/html .shtml .shtm
AddOutputFilter INCLUDES .shtml .shtm

Alias /error/ "/var/www/error/"

<IfModule mod_negotiation.c>
<IfModule mod_include.c>
    <Directory "/var/www/error">
        AllowOverride None
        Options IncludesNoExec
        AddOutputFilter Includes html
        AddHandler type-map var
        Order allow,deny
        Allow from all
        LanguagePriority en es de fr
        ForceLanguagePriority Prefer Fallback
    </Directory>
</IfModule>
</IfModule>

BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0

BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "MS FrontPage" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
BrowserMatch "^gnome-vfs/1.0" redirect-carefully
BrowserMatch "^XML Spy" redirect-carefully
BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully

・/etc/httpd/conf.d/bcollet.conf
NameVirtualHost *:80

# default
<Directory /var/www>
    AllowOverride All
    Options FollowSymLinks IncludesNoExec
    Order allow,deny
    Allow from all
    <LimitExcept GET POST OPTIONS>
        Order deny,allow
        Deny from all
    </LimitExcept>
</Directory>

# cgi-bin
ScriptAlias /cgi-bin/ /var/www/cgi-bin/

<Directory /var/www/cgi-bin>
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

# phpMyAdmin
<VirtualHost *:80>
    DocumentRoot /usr/share/phpMyAdmin
    ServerName mysql.bluishcollet.com
</VirtualHost>

<Directory /usr/share/phpMyAdmin/>
    Order allow,deny
    Allow from all
</Directory>

<Directory /usr/share/phpMyAdmin/libraries>
    Order deny,allow
    Deny from all
</Directory>

# admin
<VirtualHost *:80>
    DocumentRoot /var/www/admin
    ServerName admin.bluishcollet.com
</VirtualHost>

<Directory /var/www/admin>
    <Limit GET POST OPTIONS>
        Order deny,allow
        Deny from all
        Allow from 192.168.11.
    </Limit>
</Directory>

# join
<VirtualHost *:80>
    DocumentRoot /var/www/join
    ServerName join.bluishcollet.com
</VirtualHost>

# support
<VirtualHost *:80>
    DocumentRoot /var/www/support
    ServerName support.bluishcollet.com
</VirtualHost>

# Control Panel
<VirtualHost *:80>
    DocumentRoot /var/www/cpanel
    ServerName cpanel.bluishcollet.com
</VirtualHost>

# blog portal & user weblog
<VirtualHost *:80>
    DocumentRoot /var/www/blog
    ServerName blog.bluishcollet.com
    ServerAlias blog.bluishcollet.com *.blog.bluishcollet.com
    UserDir disabled root kazfuruya
    UserDir blog

    RewriteEngine on
    RewriteCond %{HTTP_HOST} !^blog\.bluishcollet\.com$
    RewriteCond %{HTTP_HOST} ^([\w]+)\.blog\.bluishcollet\.com$
    RewriteRule ^/(.*)$ /~%1/blog/$1 [L]
</VirtualHost>

<Directory /home/*/blog>
    AllowOverride All
    Options FollowSymLinks IncludesNoExec ExecCGI
    <LimitExcept GET POST OPTIONS>
        Order deny,allow
        Deny from all
    </LimitExcept>
</Directory>

# main site / user site
<VirtualHost *:80>
    DocumentRoot /var/www/html
    ServerName www.bluishcollet.com
    ServerAlias bluishcollet.com *.bluishcollet.com
    UserDir disabled root kazfuruya
    UserDir public_html

    RewriteEngine on
    RewriteCond %{HTTP_HOST} !^www\.bluishcollet\.com$
    RewriteCond %{HTTP_HOST} ^([\w]+)\.bluishcollet\.com$
    RewriteRule ^/(.*)$ /~%1/public_html/$1 [L]
</VirtualHost>

<Directory /home/*/public_html>
    AllowOverride All
    Options FollowSymLinks IncludesNoExec ExecCGI
    <Limit GET POST OPTIONS>
        Order allow,deny
        Allow from all
    </Limit>
    <LimitExcept GET POST OPTIONS>
        Order deny,allow
        Deny from all
    </LimitExcept>
</Directory>


ifrit側ではphpMyAdmin.confというのもあるのですが、そのファイルでの設定内容は編集したのちbcollet.confに移動してあります。
そのため、バックアップだけ取っておき、/etc/httpd/conf.d/phpMyAdmin.confそのものは削除しました。



ざざっとこんな感じです。
URLや設定ファイル載せちゃうと攻撃増えるかもしれませんが…
いまのところ何も置いてないので、別に攻撃されてもいいか、とか思ってます。
むしろ、何か置く前に穴を見つけてもらって、前もって対処できればいいなーとか(笑)

何も置いてないと言いましたが、テスト用のファイルだけは置いてあります。
各フォルダにtest.htmlというファイルがあるので、ご覧になりたい方はどうぞ。
ファイルはそのうち消しますが、サイトの中身が完成するまでは放置しておくつもりです。

ブログはここと同じユーザ名を使っています。
empty! @ BluishCollet


関連記事:サーバ構築作業まとめ
nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0

この記事のトラックバックURL:
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。

関連リンク

file   ドメイン   http   server   FrontPage   gzip   Access   Java   sound   pkcs   apache  

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。