0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

レンタルサーバーにwordpressを移設

Last updated at Posted at 2022-04-24

さくらインターネットとXserverでの作業を元に記載しています
今回の作業の目的は awsで動かしていた wordpress サイトを さくらかxserverに引っ越そうかなと。

さすがに負荷がないからか速度に顕著な差がありませんでしたが、今後課金プラグインや多言語開発をする予定があるので、XServerにする事にしました

XServer

ssh設定を行う

契約管理ページにログイン後、サーバー管理画面から作業をします

  1. SSH設定をクリックし、SSH設定をONにし、「設定する」
  2. 公開鍵認証用鍵ペアの生成をおこなう。パスフレーズは空白でもOK
  3. 秘密鍵がダウンロードされる。公開鍵がサーバー上に自動でセットされるので便利
  4. クライアントの.sshフォルダに移動し、configファイルに設定する。portが 10022になるので要注意
Host xserver.jp
  User <<サーバーID>>
  port 10022
  Hostname <<サーバー情報のホスト名を記載>>
  IdentityFile <<保存したファイル>>

サーバー上にキーペアーを作成し、git ダウンロードに備える

$ ssh-keygen
$ cat ~/.ssh/id_rsa.pub

サーバーにファイルを置いてブラウザからもアクセスを確認する

$ cd ~/<<初期ドメイン>>/public_html
$ vi index.html

アクセスURL : <<初期ドメイン>>

bitbucketに先ほど作成した公開鍵を登録し、wordperssソースをcloneする

$ mkdir staging
$ cd staging
$ git clone <<bitbucekt ssh url>>

データベースを設定する

サーバー管理からMySQL設定を開き、MySQL追加タブをクリックする

  1. データベース名を設定
  2. MySQLユーザー追加に移動して、MySQLユーザーIDとパスワードを設定する
  3. MySQL一覧から、先ほど追加したMySQLユーザーがアクセス権未所有ユーザーに表示されていることを確認し、「追加」ボタンを押し、アクセス権所有ユーザーとする

WordpressのDB接続情報を更新

以下の環境変数を先ほど設定した情報を元にセットする。
XServerのデフォルトシェルはbashのようなので、.bash_profilercに環境変数を定義します
ログイン時に実行されるのは .bashrcではなく、.bash_profile なので、環境変数は .bash_profile に設定します

export DB_HOST=localhost
export DB_NAME=<<データベース名>>
export DB_USER=<<MySQLユーザーID>>
export DB_PASSWORD=<<パスワード>>

設定後は source ~/.bash_profile で読み込み、環境変数でアクセスをしてみます

$ source ~/.bash_profile
$ mysql -h $DB_HOST -u $DB_USER -p$DB_PASSWORD $DB_NAME

データベース接続に成功したら、wordpressにデータベース情報を設定します。
ここからは、プロジェクト毎に異なりますが、私の流儀として、接続情報を環境変数から取得してwp_homeなど環境毎に異なる設定をenv/config-local.phpにしています。
wordpressは.bash_profileを読まないため、.htaccessに設定するのが便利かと。

  1. サーバーパネルから .htaccess編集により、編集したいドメインを指定して「選択する」
  2. 更に、「.htaccess編集」をする

もしくは、vi .htaccessで編集をします

SetEnv DB_HOST localhost
SetEnv DB_NAME <<データベース名>>
SetEnv DB_USER <<MySQLユーザーID>>
SetEnv DB_PASSWORD <<パスワード>>

wordpressのroutingを更新

wordpress は環境変数 WP_HOME, WP_SITEURL を渡すことで、ルートURLを変更することができます。
更に、管理画面 (wp_admin) からパーマリンク設定を保存すると、ルーティングが更新されるので便利。

さくらインターネット

ssh接続情報を取得する

サーバー仮登録のメールに記載の

  • FTPサーバー名
  • FTPアカウント
  • サーバーパスワード
    を記録します

ssh接続は

ssh [FTPアカウント]@[FTPサーバー名]
パスワードを求められたら [サーバーパスワード] を入力

サーバー接続

ssh接続後、ルートフォルダで lsコマンドを入力し、サーバー仮登録メール記載のFTP初期フォルダ が存在することを確認

cd [初期フォルダ] で移動後
vi index.html
で `hello'
という記載し、保存。

その後、[FTPサーバー] にアクセスして、 helloと記載したページが見えることを確認

sshキーを登録し、bitbucketに登録

ssh-keygen
で、.ssh 以下に、 id_rsa, id_rsa.pub ファイルを作成

id_rsa.pubの内容をbitbucketやgithub.com のユーザーページから登録する

例: https://bitbucket.org/account/settings/ssh-keys/

web公開フォルダに bitbucketにプッシュしたリポジトリを取得

git clone git@bitbucket.org:[ユーザー名]/[リポジトリ名]

今回は本番環境とステージング環境を作成する予定なので、

% pwd
/home/[username]/www
% mkdir prod
% cd prod
% git clone git@bitbucket.org:[ユーザー名]/[リポジトリ名]

で、コードをクローンした後

[FTPアカウント]/prod/[リポジトリ名]
にアクセス

データベース接続確立エラ-
のページが表示されることを確認

データベースを作成

データベース名と、パスワードを指定する
ユーザー名は[FTPアカウント]で固定の模様

以下の3つを記録します。

  • データベースサーバー名
  • データベース名
  • 接続ユーザー名
  • 接続パスワード

wordpressの接続情報をコード等に記載

ここからは、プロジェクト毎に異なりますが、私の流儀として、接続情報を環境変数から取得してwp_homeなど環境毎に異なる設定をenv/config-local.phpにしているのと、データベース操作系のスクリプトが環境変数を使っていることもあるので、以下のファイルに必要な環境変数を記載します

  • .cshrc
  • .htaccess

wordpressのroutingを更新

wordpress は環境変数 WP_HOME, WP_SITEURL を渡すことで、ルートURLを変更することができます。
更に、管理画面 (wp_admin) からパーマリンク設定を保存すると、ルーティングが更新されるので便利。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?