基本的にはhttp://centossrv.com/apache.shtmlを参考にした。
やっとWEBサーバーの設定になりますが、まず必要なプログラムのインストール(apacheはデフォルトでインストール済み)
# yum -y install php php-mbstring mysql mysql-server php-mysql
作ろうとしているWEBはXOOPSを使用しておりますので、mysql関係が必要です。
/etc/httpd/conf/httpd.confの設定。基本的にはhttp://centossrv.com と同じだが、変更した部分だけを記す。
KeepAlive ON ←多分少しはコネクションをキープした方が良さそうだから。
ServerAdmin xxxxxx@kinryokai.net
#ServerName www.example.com:80 ←virtualhost.conf で設定
#DocumentRoot "/var/www/html" ←virtualhost.conf で設定
<Directory />
Options Includes ExecCGI FollowSymLinks ←Includes ExecCGI を記入
AllowOverride None ←.htaccessは使わないので、noneのまま
</Directory>
<Directory "/var/www/html"> から </Directory> までを消去。
これはdocument rootの設定だが、virtualhost.conf で設定
DirectoryIndex index.html index.php index.html.var ←index.phpを追加
SetEnvIf Request_URI "\.(gif|jpg|png|JPG|GIF|PNG|bmp|css|ico|ICO)$" no_log ←追加
SetEnvIf Request_URI "default\.ida" no_log ←追加
SetEnvIf Request_URI "cmd\.exe" no_log ←追加
SetEnvIf Request_URI "root\.exe" no_log ←追加
SetEnvIf Request_URI "Admin\.dll" no_log ←追加
SetEnvIf Request_URI "NULL\.IDA" no_log ←追加
SetEnvIf Remote_Addr 192.168 no_log ←追加
SetEnvIf Remote_Addr 127.0.0.1 no_log ←追加
#CustomLog logs/access_log combined env=!no_log ←コメントアウト、virtualhost.confで設定
Alias /icons/ "/xxxxx/icons/" ←場所を変更
<Directory "/xxxxx/icons">
#<IfModule mod_dav_fs.c> ←webdav.conf で設定
# Location of the WebDAV lock database.
# DAVLockDB /var/lib/dav/lockdb
#</IfModule>
#ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" ←virualhost.confで設定
#<Directory "/var/www/cgi-bin">
# AllowOverride None
# Options None
# Order allow,deny
# Allow from all
#</Directory>
をしていく。最後の方のパーティションを作るあたりは今回は既に出来ているので、無視していい。
AllowOverride None は説明が要るかな。
https://httpd.apache.org/docs/current/ja/howto/htaccess.html
の ”いつ .htaccess ファイルを使う(使わない)か。”を参照してください。
virtualhost の設定をする。
/etc/httpd/conf.d/virtualhost.conf に
NameVirtualHost *:80
# kinryokai
<VirtualHost *:80>
DocumentRoot /xxxxxxx/public/kinryokai
ServerName www.kinryokai.net
ServerAlias kinryokai.net
ErrorLog logs/kinryokai_error_log
CustomLog logs/kinryokai_access_log combined env=!no_log
<Directory "/xxxxx/public/kinryokai/upfiles">
SetEnvIf Referer "^http://www\.kinryokai\.net" ref_ok
order deny,allow
deny from all
allow from env=ref_ok
</Directory>
<Directory "/xxxxx/public/kinryokai/uploads">
SetEnvIf Referer "^http://www\.kinryokai\.net" ref_ok
order deny,allow
deny from all
allow from env=ref_ok
</Directory>
ScriptAlias /cgi-kinryo/ "/xxxxx/cgi-kinryo/"
<Directory "/xxxxx/cgi-kinryo">
AllowOverride None
Options None
SetEnvIf Referer "^http://www\.kinryokai\.net" cgi-kinryo_ok
order deny,allow
deny from all
allow from env=cgi-kinryo_ok
</Directory>
</VirtualHost>
この設定の意味はcentocsrv.comを参考にしてください。
又、 “/xxxxx/public/kinryokai/upfiles”と “/xxxxx/public/kinryokai/uploads” の設定はここに画像などを置いておくので、他のWEBからリンクを張られ、遅くなるのを防ぐ設定です。
もう一度 conf のチェック
# apachectl configtest
ここを参考にmysqlの設定、起動をしてください。
デフォルトではアップ出来るサイズが小さいので、/etc/php.iniを変更します。
post_max_size = 50M
upload_max_filesize = 50M
date.timezone = Asia/Tokyo ← 先頭の;を取るのを忘れずに
上記のように3ヶ所変更をします。
webサーバーの起動
# service httpd start
# chkconfig httpd on
今はテストなので/etc/hostsにこのサーバーのIPとURLを設定し、
ブラウザでwww.kinryokai.net にアクセスし、表示されればOK。
マイグレーション時にルーターの設定を変更し、このサーバーにフォワードする。