ローカルの仮想サーバにWordPressのテスト環境を作るまで
ローカルPC上で構築しているが、途中でXserver上のテストページで作ればよかったかな~っと。
まあ一応、家でいじれる程度にはなったので、やったことのメモ。
だいたいこんな感じの順番でやった。
- vmnetstat.confで仮想サーバにポート転送
- 必要なファイル、データベースを取得
- ファイルを仮想サーバに配置
- httpd.confを設定
- firewalldでhttpを許可
- PHPとMySQLのインストール
- データベースを作成
- wp-config.phpの設定
- 追加したモジュール
vmnetstat.confで仮想サーバにポート転送
VMware内のCentOSにLAN内のタブレットからアクセスするを参照。
必要なファイル、データを取得
とりあえず、ブログに必要なデータを取得するところから。
Xserverの場合、
サイトに必要なファイルはバックアップ(~.tar.gz)、
データベースはphpmyadminから取得できる(~.sql)。
- サーバーパネル -> アカウント -> バックアップ
- サーバーパネル ー> データベース ー> phpmyadmin
ファイルを仮想サーバに配置
ダウンロードした tar.gz を TeraTerm でドラッグ・アンド・ドロップ。
解凍したディレクトリを /var/www/html 配下に丸ごと置いた。
1 2 3 4 |
/var/www/html/kiskksk.com/ |-- public_html |-- htpasswd |-- ・・・ |
httpd.confの設定変更
解凍したディレクトリのパスをドキュメントルートとして設定。
また、 .htaccess を利用するために AllowOverride All をディレクトリに指定。
1 2 3 4 5 6 7 8 9 |
#ドキュメントルートの設定 DocumentRoot "/var/www/html/kiskksk.com" # .htaccessを許可する設定 indexとかはまあローカルということでテキトーに <Directory "/var/www/html/kiskksk.com/"> Options Indexes FollowSymLinks Require all granted AllowOverride All </Directory> |
firewalldでhttpを許可
sshではアクセスできたが、httpだとアクセスできない。
ー> ファイアーウォールとか?
CentOS7は firewalld というものでファイアーウォールを設定しているらしい。
とりあえず、httpアクセスが初期状態で許可されていなかったので、次のコマンドで許可する。
1 2 3 4 5 6 7 |
// 一時的にhttpプロトコルを許可する場合(再起動等で戻る) firewall-cmd --zone=public --add-service=http // 恒久的に設定するには、 // 起動時の設定にhttpを追加して、リロードする firewall-cmd --permanent --zone=public --add-service=http firewall-cmd --reload |
ついでにSELinuxも無効化しておいた
1 2 3 4 5 6 7 8 9 |
// 確認 getenforce // EnforcingならSELinuxが有効 // Disabled なら無効 // 一時的に無効化。 (有効化は1) setenforce 0 // 恒久的には /etc/selinux/config で SELINUX=disabled |
PHPとMySQLのインストール
ここまでやって、PHPとMySQLを入れ忘れていたことに気づく。
ということで、インストールする。
バージョンだが、PHP7に上げたときに問題が出ないか確認したかったので、実際のサーバー環境とは異なるものをいれた。
で、MySQLのバージョンも違うけどまあいいやって感じでいれた。
そんな感じで、これじゃちゃんとしたテストにならない気がするけど気にしない。
PHP | 7.0.17 |
MySQL | 5.7.17 |
1 2 |
yum install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm yum install --enablerepo=remi,remi-php70 php |
1 2 |
yum install https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm yum install mysql-community-server |
これで、単体のインストールは完了。
続けて、PHPとMySQLの連携用に mysqlnd を入れた。
1 |
yum install --enablerepo=remi,remi-php70 php-mysqlnd |
データベースを作成
MySQLにとりあえずrootでログインし、WordPressが利用するデータベース及び、ユーザーを作成。
作成する際に wp-config.php の指定に合わせるようにする。
DB_NAME | データベース名 |
DB_USER | ユーザー名 |
DB_PASSWORD | パスワード |
(なお、初回のrootパスワードは /var/log/mysqld.log に次のような感じで出力されている。
A temporary password is generated for root@localhost: rFOppwhj/4By)
作成したユーザーにデータベース権限を付与して、次のコマンドでデータベースの中身を作成した。
1 |
mysql -u'ユーザー名' -p'パスワード' 'データベース名' < sqlファイル |
なお今回、パスワードのポリシー違反で、持ってきた値が使用できなかったので、新たにパスワードを設定。
wp-config の DB_PASSWORD を新しいパスワードに合わせるように変更したところ、ちゃんと動いた。
wp-config.phpの設定
次の2行を追加し、サイト内リンクの指定先を「テスト環境サーバ」にする。
これを変更しないと、リンクを押した時、本番サイトに飛んでしまう。
1 2 |
define ('WP_SITEURL', 'http://ホストOSのアドレス:指定したポート番号/'); define ('WP_HOME', 'http://ホストOSのアドレス:指定したポート番号'); |
追加したモジュール
とりあえず、問題が発生(確認出来たもの)したので、現時点で追加したモジュール。
多分他にも必要な物はあると思うが、今のところ動いているっぽいので置いておく。
文字処理用 | php-mbstring | これは無いとまずいと思う |
画像処理用 | php-gd | お問い合わせの画像認証に必要だった |
xml | php-xml | Fatalエラーがでてた |
1 |
yum install --enablerepo=remi,remi-php70 php-mbstring php-gd php-xml |
関連記事
-
VMware内のCentOS(NAT接続)にLAN内のタブレット(android)からアクセスする
前回につづいて、仮想環境の設定。 ブリッジ接続の場合、ホストOSのLANに直接参 …
-
VMwareにCentOS7をインストール。yumに失敗したのは、ゲートウェイとDNSの指定をしていなかったから
今回、勉強を兼ねてブログ用のテスト環境を作成しようと、久しぶりに仮想環境の構築か …
-
CentOS7にLAMP環境構築をした際のメモ。インストール編。
仮想環境上にCentOS7をインストールし、LAMPを構築した際のメモ。 基本的 …
スポンサーリンク
週間人気記事
AndroidStudioでコピペする方法。デフォルトではクリップボードから貼り付けできない
Android Serviceのメモ。onBind,onRebind,onUnbindが呼ばれる条件