この作業は中止
kusanagi provision --lamp
だと、MySQL上に無駄にデータベースが作成される
また、nginxの.confの設定が複雑になり、画像が表示されなかったりした
旧サーバーの.confに手動で行っていたカスタマイズを
kusanagiが生成した.confファイルに手動でマージしていったらベースは動いているけどロゴが表示されなかったりで
完全移行に失敗
DokuWiki
のプロジェクトルートが/home/user1/DokuWiki/xxx
の場合
cd /home/user1/DokuWiki tar cJf xxx.tar.xz xxx
xxx
ディレクトリを丸ごとバックアップ、tar
のJ
オプション(xz
方式)で圧縮し、xxx.tar.xz
というファイルを作成
作成したxxx.tar.xz
はffftpなどでローカルに保存しておき、あとで新サーバーにアップロードする
cd /etc/letsencrypt/live/example.com cp fullchain.pem /home/user1/ cp privkey.pem /home/user1/ cd /home/user1/ chmod 777 fullchain.pem chmod 777 privkey.pem
/etc/letsencrypt/live/example.com
のようなディレクトリにある
fullchain.pem
privkey.pem
という2つのファイルをダウンロードする
FTPなどを使ってダウンロードする場合には
直接ダウンロードしようとするとおそらくパーミッションの関係でエラーになるので
ホームディレクトリにコピーを作成して権限を777
にしてやる
--lamp
オプションをつけてkusanagi provision
コマンドを実行する
kusanagi provision --lamp example.com
ターゲットディレクトリは /home/kusanagi/example.com です。 Webサイトで使用するホスト名(FQDN)を入力してください。 例) kusanagi.tokyo example.com Webサイトで使用するホスト名(FQDN)をもう一度入力してください。 example.com Let's Encryptを使用される場合、Let's Encrypt の使用規約に同意される必要があります。 使用規約に同意される場合、あなたのメールアドレスを入力してください。同意されない場合、Enterキーを二回押してください。 使用規約は次のURLより確認できます: https://letsencrypt.org/repository/ メールアドレスを再入力してください。 データベース名を入力してください。 notuse_example データベース名を再度入力してください。 notuse_example データベース notuse_example のユーザー名を入力してください。 notuse_example データベース notuse_example のユーザー名を再度入力してください。 notuse_example データベースユーザ'notuse_example'のパスワードを入力してください。[a-zA-Z0-9.!#%+_-]の文字列が使用できます。最小は8文字以上です。 再度 'notuse_example' のパスワードを入力してください。 example.com のプロビジョニングは完了しました。example.com にアクセスし、lampをインストールしてください! 完了しました。
FQDN
を聞かれるので
サイトのドメイン名を入力
ここで書いたFQDNの値がkusanagiの関連ファイルに書き込まれるので
example.com
のような仮の値ではなく
旧環境で使用している実際のドメイン名を入力する
Let's Encryptの規約に同意する場合は
あなたのメールアドレスを入力してください。同意されない場合、Enterキーを二回押してください。
と聞かれるので
Enter
を2回押す
新サーバーへ向けたDNSの設定がまだなので、ここでメールアドレスを入力してもLet's Encryptの処理には失敗してしまう
Enterを2回で(規約に同意しないことで)、Let's Encryptの処理をスキップできる
データベース名を入力してください
データベース xxx のユーザー名を入力してください
データベースユーザ'yyy'のパスワードを入力してください
などと聞かれるが、DokuWikiではデータベースを使用しない
どうせ使わないので適当な値を入力して構わない
データベース名をnotuse_example
のような値にすることで
kusanagi provision –lamp example.com
のコマンド実行に付随して生成されたものであることなどが、後々でも分かるようにしておく
C:\Windows\System32\drivers\etc
というフォルダにある
hosts
ファイルを開く
xx.xx.xx.xx example.com
hostsに上記のような設定を追加する
xx.xx.xx.xx
は新サーバーのグローバルIPアドレス
example.com
には実際のFQDNを設定
旧サーバーで作成した
の3つのファイルを新サーバーにアップロードし
/home/kusanagi/example.com
のようなディレクトリに配置する
example.com
の部分は
kusanagi provision
コマンドで指定したプロファイル名
旧サーバーで事前にバックアップしておいたDokuWikiのファイルxxx.tar.xz
が
/home/kusanagi/example.com
のようなディレクトリに設置してある
cd /home/kusanagi/example.com tar xJf xxx.tar.xz mv xxx/* DocumentRoot/
tar xJf xxx.tar.xz
コマンドで
xxx.tar.xz
が解凍されてxxx
というディレクトリが作成される
mv xxx/* DocumentRoot/
コマンドで
xxx
の中身をDocumentRoot
に移動している
cd /home/kusanagi/example.com/DocumentRoot chown -R httpd:www . systemctl restart nginx
DocumentRoot
以下のすべてのファイルの所有者をhttpd:www
(nginxの実行ユーザー)に変更する
所有者の変更を反映させるには
systemctl restart nginx
コマンドでnginxのサービスを再起動する
vi /etc/nginx/conf.d/example.com_http.conf