50MBで/var/www/html/oizu.net/dataディレクトリの容量制限をする。
50MBのデバイス?を作成(=/home/oizu.net.data.fs bs=10M count=5)
その後デバイスをフォーマットし、/var/www/html/oizu.net/dataをmountする
# dd if=/dev/zero of=/home/oizu.net.data.fs bs=10M count=5 5+0 レコード入力 5+0 レコード出力 52428800 バイト (52 MB) コピーされました、 0.0340571 秒、 1.5 GB/秒
# ls -l 合計 51204 -rw-r--r-- 1 root root 52428800 1月 16 14:12 oizu.net.fs
# mke2fs /home/oizu.net.data.fs mke2fs 1.41.14 (22-Dec-2010) /home/oizu.net.data.fs is not a block special device. Proceed anyway? (y,n) y Filesystem label= (略) Maximum filesystem blocks=52428800 7 block groups 8192 blocks per group, 8192 fragments per group 1832 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961 Writing inode tables: done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 38 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
# cd /var/www/html/oizu.net # mv data data.old # mkdir data # mount -o loop /home/oizu.net.data.fs /var/www/html/oizu.net/data
起動時mount可能にする。
/etc/fstab
/home/oizu.net.data.fs /var/www/html/oizu.net/data ext2 defaults 0 0
インストール場所のフルパスを同じにする。現在ここまでしか不明 同じところにインストールして、以下のフォルダコピーするとOKなようだ
/data/cache /data/personal /data/plugins /data/files
IE9では/data/cache/plugins_cache.serが原因で動作しなかった。動作するものと入れ替えでなんとか動作した。
デフォルトの loop0 〜 loop7は/sbin/start_udevで作成している
/sbin/start_udev
for i in 0 1 2 3 4 5 6 7; do [ -b /dev/loop$i ] || /bin/mknod -m 0640 /dev/loop$i b 7 $i /bin/chown root:disk /dev/loop$i done
/dev/loop0 〜 loop7がある
新規追加分は/etc/udev/makedev.d/50-udev.nodesに記入
# for i in $(seq 8 511); do echo "loop$i" >> /etc/udev/makedev.d/50-udev.nodes; done
/etc/udev/makedev.d/50-udev.nodes
loop8 loop9 (略) loop62 loop63
再起動
/dev/loop0 〜 loop63を確認
256 個以上の loop デバイスを作成する場合は、/etc/makedev.d/01linux-2.6.x で指定される最大値も修正
/etc/makedev.d/01linux-2.6.x
# b $STORAGE 7 0 1 256 loop%d # デフォルトは最大 256 個 b $STORAGE 7 0 1 512 loop%d # 最大 512 個に変更
Pleskではそのままではopen_basedirがに指定されているところがwriteできないと怒られるのでphpの変数を以下のように変更する。バーチャルごとにphpの環境を設定
「statistics/logs/error_log」にエラーログが出る。たとえば.htaccessにphpの環境を書けないないので、書くと以下のようなエラーが出る
[Wed Jan 11 13:34:53 2012] [alert] [client 192.244.75.249] \ /var/www/vhosts/oizu.net/httpdocs/ajaxplorer/.htaccess: php_admin_value not allowed here
直接php.iniは編集しては壊れるので以下のようにする。
/var/www/vhosts/oizu.net/conf/vhost_ssl.confとconf/vhost.conf同じ内容に作成する
<Directory /var/www/vhosts/oizu.net/httpdocs> <IfModule mod_php5.c> php_admin_value open_basedir none php_value default_charset UTF-8 php_value mbstring.language Japanese php_value mbstring.internal_encoding UTF-8 php_value upload_max_filesize 300M php_value memory_limit 1024M php_value post_max_size 300M </IfModule> </Directory>
各ドメインごとに環境を作成し適用する
ドメインごとに適用
# /usr/local/psa/admin/sbin/websrvmng --reconfigure-vhost --vhost-name=oizu.net WARNING: You are using obsolete option, use corresponding option of httpdmng.
全体を同時に提要
# /usr/local/psa/admin/bin/websrvmng -v -a
確認
文法の確認を必ず行う
# /etc/init.d/httpd configtest Syntax OK
Apacheに適用
# /etc/init.d/httpd reload
確認は phpで以下のようなファイルを作成し確認
<?php phpinfo(); ?>
あとはオーナ、グループをApacheに変更したら、通常のようにインストールできた。ただし、インストール時文字コード関係でwarningが出た
サブドメイン test.oizu.netの場合
vhost.conf, vhost_ssl.confを /var/www/vhosts/oizu.net/subdomains/test/confに作成
ドキュメントルートが/var/www/vhosts/oizu.net/subdomains/test/httpdocsの場合
vhost.conf(vhost_ssl.conf)
<Directory /var/www/vhosts/oizu.net/subdomains/test/httpdocs> <IfModule mod_php5.c> php_admin_value open_basedir none (略) </IfModule> </Directory>
設定コマンドは
# /usr/local/psa/admin/sbin/websrvmng --reconfigure-vhost --vhost-name=oizu.net WARNING: You are using obsolete option, use corresponding option of httpdmng.
で--vhost-nameの値はサブドメインでなくドメイン名を指定
- Server charset encoding Warning You must set a correct charset encoding in your locale definition in the form: en_us.UTF-8. Please refer to setlocale man page. If your detected locale is C, please check the F.A.Q.. Detected locale: C (using UTF-8)
のようなWarningがインストール時に出て日本語ファイル名のUploadができない
Webを利用してサーバ上でファイルの管理が行える。導入は簡単でデータベースも不要だ。 データ保存箇所もWebアクセスできないディレクトリも可能だ。アクセスもSSLを利用するのでセキュリティも確保されている。
iPhone/iPadの専用プログラムもある。ただし85円必要
ここからajaxplorer-core-4.0.1.zipをダウンロードする。
$ unzip ajaxplorer-core-4.0.1.zip $ su # cp -a ajaxplorer-core-4.0.1 /var/www/html/ # cd /var/www/html # chown -R apache.apache ajaxplorer-core-4.0.1 # ln -s ajaxplorer-core-4.0.1 ajaxplorer
php.iniで「default_charset = UTF-8」と「mbstring.internal_encoding = UTF-8」がコメントアウトされているときは以下のようにインストールフォルダの.htaccess を追加
.htaccess
#RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1] </IfModule> #以下はhttpsにリダイレクト <Files *> RewriteEngine on RewriteCond %{SERVER_PORT} ^80$ RewriteRule (.*)?$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R] </Files> #phpパラメータを以下に追加 php_value default_charset UTF-8 php_value mbstring.language Japanese php_value mbstring.internal_encoding UTF-8
またUpLoadファイル容量も変更のため以下を追加
php_value post_max_size 200M php_value upload_max_filesize 256M php_value memory_limit 1024M
確認は/設定/Logs&Other Data/Diagnosticで確認
日本語ファイル名などを通すため以下を追加
conf/bootstrap_repositories.php
* Use the GUI to add new repositories. * + Log in as "admin" and open the "Settings" Repository */ // Edit by JE2ISM setlocale(LC_ALL,'ja_JP.UTF-8'); <==追加 defined('AJXP_EXEC') or die( 'Access not allowed');
data以下のアクセス制限ディレクトリには作成されているので以下は不要かも
このままだとMyFolderが直接アクセスできるの格納場所data/に.htaccessを作成し、アクセスを禁止する。
.htaccess
order deny,allow deny from all allow from localhost
あとはWebから設定
http://(Host)/ajaxplorer/
にアクセス。SSLにリダイレクトされる
MCrypt enabledがWARNINGになるがそれ以外が「OK」なら「click here to....」をクリック
ここで初期管理者の
id: admin pass: admin
と表示される
login後「設定」から
「Global Configurations」-> 「Core Configs」-> 「AjaXplorer」
Main Options で
Default Language : ja
Adminのパスワードおよびユーザ作成
「設定」-> 「Repositories & Users」->「Users」でadminを選択してパスワードを変更
上部メニューの「新規ユーザ」からユーザ作成
作成されるとdata/personalの下にユーザ名のフォルダが作成されこれが「MyFolder」になる。
上部メニューの「新規リポジトリ」から「Repository」
Repository Label :(フォルダ名) Repository Driver : File System Path: /var/www/axp_area/sfs (事前に/var/www/axp_areaを作成し # chown apache.apach axp_area # chmod 644 axp_area) Puge Days : 0 (削除日程)
作成後は各ユーザの設定でアクセス件を設定すると利用できる
ユーザ設定
data/plugins/auth.serial
a:4:{s:5:"admin";s:32:"********************************";\ s:7:"student";s:32:"********************************";\ s:5:"okada";s:32:"********************************";\ s:6:"nishii";s:32:"********************************";}