===== さくらVPSにDokuwikiをインストールしてみた =====
==== 環境 ====
| サーバ | さくらVPS |
| OS |CentOS 6.6 |
| Apach |2.2.15 |
| Apache ユーザー | apache |
| Apache グループ | apache |
| ドメイン | hoge.∗∗∗∗∗.com(サブドメイン) |
| インストール先 | /home/hoge/public_html/ |
| DokuWiki | 2015-08-10a |
※ サブドメインのDNS設定はここでは説明しませんので各自で行ってください。
==== ユーザーアカウントの作成 ====
* 以下の操作は //**root**// アカウントで実施します。
=== ユーザーアカウントの作成 ===
* //**root**// でログインし、Dokuwikiのインストール先のユーザー //**hoge**// を作成します。
>useradd hoge ← ユーザー追加
>passwd hoge ← パスワードセット
ユーザー hoge のパスワードを変更。
新しいパスワード:
新しいパスワードを再入力してください:
passwd: 全ての認証トークンが正しく更新できました。
=== hoge グループへ apache ユーザーを追加 ===
* apache からファイルを書き込めるように //**hoge**//グループにユーザー //**apache**// を追加します。
gpasswd -a apache hoge
Adding user apache to group hoge
=== ホームディレクトリのパーミッション変更 ===
* ユーザー //**hoge**// のホームディレクトリ( **/home/hoge/** )を 別のユーザーから閲覧できない状態を保持しつつ、Apacheからのアクセスを許可するためにパーミッションを変更します。
>chmod 710 /home/hoge
>ls -l /home
合計 3
drwx--x--- 3 hoge hoge 4096 ∗∗月 ∗∗ ∗∗:∗∗ ∗∗∗∗ hoge
=== グループの追加について ===
* ここでは、ユーザー //**hoge**// のグループに //**apache**// を追加することで、apacheからファイルを書き込めるようにしています。
* 逆の方法として、//**apache**// グループにユーザー //**hoge**// し、ユーザー //**hoge**// のグループを//**apache**//に変更する方法もあります。
>gpasswd -a hoge apache
>chown hoge:apache /home/hoge
>ls -l /home
合計 3
drwx--x--- 3 hoge apache 4096 ∗∗月 ∗∗ ∗∗:∗∗ ∗∗∗∗ hoge
* ただこの場合、Web公開するアカウント全てをapacheグループに所属させることになるため、ユーザー毎の独立性が損なわれるため、公開ユーザー(ここでは、//**hoge**//)のグループ毎に //**apache**// ユーザーを追加しています。(正直どっちがいいか分かりませんが:-/)
==== apacheの設定 ====
=== apache の設定 ===
* サブドメイン( hoge.xxxx.com ) で **/home/hoge/public_html** を公開できるようapacheの設定ファイルに以下のようにバーチャルホストを追加します。apacheの設定ファイルは **/etc/httpd/conf/httpd.conf** です。
=== ログの出力先フォルダを作成 ===
* apacheのログ出力先を **/var/log/httpd/hoge/** にしましたので、ログを出力できるよう、ディレクトリを作成しておきます。
>mkdir /var/log/httpd/hoge
=== apache の再起動 ===
* 設定を有効にするためにapacheを再起動します。
>cd /etc/init.d
>./httpd restart
httpd を停止中: [ OK ]
httpd を起動中: [ OK ]
* エラーがでなければ正常に起動されています。
==== 公開ディレクトリの作成 ====
* 以下の操作はユーザー //**hoge**// で実施します。
=== 公開ディレクトリの作成 ===
* webで公開するディレクトリ **/home/hoge/public_html** を作成します。
>mkdir /home/hoge/public_html
>ls -l /home/hoge
合計 2
drwxr-xr-- 2 root root 4096 ∗∗月 ∗∗ ∗∗:∗∗ ∗∗∗∗ public_html
=== 公開ディレクトリのパーミッションを変更 ===
* webで公開するディレクトリ **/home/hoge/public_html** のパーミッションを変更します。
>chmod 2750 /home/hoge/public_html
>ls -l /home/hoge
合計 2
drwxr-s--- 2 hoge hoge 4096 ∗∗月 ∗∗ ∗∗:∗∗ ∗∗∗∗ public_html
==== Dokuwikiのダウンロード ===
* 以下の操作はユーザー //**hoge**// で実施します。
=== Dokuwikiのダウンロード ===
* Dokuwikiダウンロードページ http://download.dokuwiki.org/ から Stable (Recommended) のバージョンをダウンロードします。ここでは、Linuxにユーザー //**root**// でログインし、wgetコマンドで直接ダウンロードを行っていますが、Windows上からブラウザでダウンロード後、FTPでLinuxサーバーへ移動させる方法もあります。
* ダウンロードするファイルを確認する。
* DokuwikiのダウンロードページからStable (Recommended) 右の(direct link) にマウスカーソルを合わせてダウンロードするファイルのURLを確認します。\\ ダウンロードURLはhttp://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz になっていると思います。
* Linux上からDokuwikiをダウンロードします。\\
>cd /home/hoge
>wget http://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
--xxxx-xx-xx xx:xx:xx-- http://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz
download.dokuwiki.org をDNSに問いあわせています... 2a01:4f8:140:13e4::b00b, 46.4.55.201
download.dokuwiki.org|2a01:4f8:140:13e4::b00b|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 3406922 (3.2M) [application/octet-stream]
`dokuwiki-stable.tgz' に保存中
100%[============================================>] 3,406,922 1010K/s 時間 3.3s
xxxx-xx-xx xx:xx:xx (1010 KB/s) - `dokuwiki-stable.tgz' へ保存完了 [3406922/3406922]
>ls
dokuwiki-stable.tgz public_html
=== 解凍 ===
* ダウンロードしたファイル(dokuwiki-stable.tgz)を解凍します。 \\ 解凍すると、ディレクトリ dokuwiki-2015-08-0a が作成されます。
>tar -zxvf dokuwiki-stable.tgz
dokuwiki-2015-08-10a/
dokuwiki-2015-08-10a/index.php
dokuwiki-2015-08-10a/inc/
:
:
dokuwiki-2015-08-10a/data/index/
dokuwiki-2015-08-10a/data/index/_dummy
>ls
dokuwiki-2015-08-10a dokuwiki-stable.tgz publuc_html
=== ドキュメントルートへ移動 ===
* 解凍したファイルを公開ディレクトリ(/home/hoge/public_html) へ移動します。
>mv dokuwiki-2015-08-10a/{.??*,*} public_html/
=== パーミッションの設定 ===
* dokuwikiの各ファイルのパーミッションをその他のユーザーからのアクセスを不可にします。
> chmod -R o-rwx /home/hoge/public_html
* dokuwikiの各フォルダのパーミッションを設定しますが、以下操作は行わなくてもグループのパーミッションに書込み権限は付加されていると思います。備忘録です。
>cd /home/hoge/public_html
>chmod g+w ./conf
>chmod g+w ./data
>chmod g+w ./data/attic
>chmod g+w ./data/cache
>chmod g+w ./data/index
>chmod g+w ./data/locks
>chmod g+w ./data/media
>chmod g+w ./data/media_attic
>chmod g+w ./data/media_meta
>chmod g+w ./data/meta
>chmod g+w ./data/pages
>chmod g+w ./data/tmp
>chmod g+w ./lib
>chmod g+w ./lib/plugins
>chmod g+w ./lib/plugins/acl
>chmod g+w ./lib/plugins/authad
>chmod g+w ./lib/plugins/authldap
>chmod g+w ./lib/plugins/authmysql
>chmod g+w ./lib/plugins/authpgsql
>chmod g+w ./lib/plugins/authplain
>chmod g+w ./lib/plugins/config
>chmod g+w ./lib/plugins/extension
>chmod g+w ./lib/plugins/info
>chmod g+w ./lib/plugins/popularity
>chmod g+w ./lib/plugins/revert
>chmod g+w ./lib/plugins/safefnrecode
>chmod g+w ./lib/plugins/styling
>chmod g+w ./lib/plugins/usermanager
>chmod g+w ./lib/tpl
>chmod g+w ./lib/tpl/dokuwiki
==== Dokuwiki のインストール ===
=== dokuwikiのインストール ===
* ブラウザでdokuwikiにアクセスすると、DokuWikiインストーラーが起動します。
http://hoge.*****.com/install.php
* 必要な情報を入力し、『保存』ボタンをクリックします。
- Wiki名 \\ 任意
- 使用言語 \\ ja
- ACL \\ デフォルト(チェックする)
- スーパーユーザー \\ 任意
- フルネーム \\ 任意
- メールアドレス \\ 任意
- パスワード \\ 任意
- 確認 \\ 上記のパスワードを再入力
- ACL初期設定 \\ 任意 ここでは『クローズドWiki(登録ユーザーにのみ使用を許可』を選択
- ユーザ自身で登録可能 \\ デフォルト(チェックしない)
- ライセンスの選択 \\ デフォルト(CC Attribution-Share Alike 3.0 Unported)
=== install.phpの削除 ===
* インストールが正常に終了したら、**install.php** を削除します
>cd /home/hoge/public_html
>rm ./install.php
* 再度ブラウザからdokuwikiにアクセスすると、ログイン画面が表示されるのでインストールで設定したユーザーとパスワードでログインする。
==== 課題 ====
* /home/hoge 以下がapacheを含むグループになるが問題ないか?
* 上記設定の場合、/home/hoge/public_html/data/cash/ 以下に作成されるファイルのオーナーとグループが //**apache**// となり、ユーザー //**hoge**// では消すことができなくなる。apache ユーザーを含めたサブグループが必要か・・・phpをCGIモードで動かすか・・・。
----