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?

【初心者向け】VMwareでLAMP環境を構築して、WordPressを表示させる

Posted at

はじめに

VMwareを使用してLAMP環境とWordPress環境を構築している記事があまりなかったので、私が書きます。またLAMPが何か、WordPressとは何かといった解説はしておりません。あくまで構築のみになります。ご注意ください。

※作業は全てroot権限で行っております。

この記事の対象者

・VMware初心者の方
・LAMP、WordPress環境を構築したことがない人
・練習としてLAMP、WordPress環境を構築したい人

構築環境について

特にバージョンを指定したわけではありませんが、一応記述しております。

VMware Workstation Pro
CentOS Stream 9
Apache/2.4.57
MariaDB Server 10.5.22
PHP 8.0.30

VMware

・左上のアクティビティよりターミナルを選択し開きます。

・事前準備としてroot権限になります。またIPアドレスも把握しておきます。

sudo su -
hostname -I

●Apache

・Apacheをインストールします。

# yum -y install httpd   
# httpd -v

・Apacheを起動し、自動起動設定を行います
事前に systemctl status httpd を行うとより理解が深まります。

# systemctl start httpd
# systemctl enable httpd

・Apacheが起動していることを確認します。

# systemctl status httpd

・.htaccessファイルの設定が有効になるように内容を変更します。
※今回は行っておりませんが、confファイルを操作する場合はなるべくコピーを取った方が安全です。

# vi /etc/httpd/conf/httpd.conf

【Directory "/var/www/html"】内の
AllowOverride none

AllowOverride All
に変更します。

・次にファイアウォールでhttp通信を許可後、永続化します。

# firewall-cmd --permanent --add-service=http
success
# firewall-cmd --reload
success

ファイアウォールで許可されているか確認します。

# firewall-cmd --list-service
cockpit dhcpv6-client http ssh

・この時点で自身のIPアドレスを叩くとApacheの画面が表示されるはずです。

●MariaDB

今回WordPress用で使用する内容は下記のものとします。

項目 内容
DB名 wordpress
ユーザ名 user
パスワード pass

・インストール

# yum -y install mariadb-server mariadb

・Apache同様、MariaDBサーバーを起動し、自動起動を有効化します

# systemctl start mariadb
# systemctl enable mariadb

・セキュリティ強化のための初期設定を行います。

# mysql_secure_installation

●聞かれる項目
・Enter current password for root (enter for none):
・Switch to unix_socket authentication [Y/n]
・Change the root password? [Y/n]
・Remove anonymous users? [Y/n]
・Disallow root login remotely? [Y/n]
・Remove test database and access to it? [Y/n]
・Reload privilege tables now? [Y/n]

・MariaDBに接続します。

# mysql -u root -p

・接続後、上記で定義しているWordPress用のDBとユーザを作成します。

mysql> CREATE database wordpress;
mysql> GRANT ALL PRIVILEGES ON wordpress.* TO "user"@"localhost" IDENTIFIED BY "pass";

権限情報を更新し、終了します。

mysql> FLUSH PRIVILEGES;
mysql> exit;

●PHP

パッケージをダウンロードします。

# yum install php php-devel php-mysqlnd php-mbstring php-pdo php-gd

●パッケージ説明
php: PHPの実行環境を提供
php-devel: PHP拡張の開発に必要なツールを提供
php-mysqlnd: MySQLデータベース接続用の拡張機能
php-mbstring: マルチバイト文字列操作用の拡張機能
php-pdo: データベース接続用の抽象化インターフェース
php-gd: 画像処理用のGDライブラリ拡張

・バージョン確認により、インストールを確認できます。

# php -v

・ダウンロード後に一度Apache再起動します。

# systemctl restart httpd

・Apacheのドキュメントルート配下にphpファイルを記載して動作確認を行います。

# vim /var/www/html/test.php
test.php
<?php
    echo phpinfo();
?>

自分のIPアドレス/test.php
でURLを叩くとPHPのページが表示されます。

●WordPress

・WordPressをtmpフォルダにダウンロードし、解凍

# cd /tmp
# wget https://ja.wordpress.org/latest-ja.tar.gz
# tar -xzvf latest-ja.tar.gz

・解凍したものをApacheのドキュメントルートに移動させ、移動します。

# mv wordpress /var/www/html/
# cd /var/www/html/wordpress

・wp-config-sample.phpからwp-config.phpを作成後、編集します。

# mv wp-config-sample.php wp-config.php
# vim wp-config.php

内容を下記のとおりに変更する。

/** The name of the database for WordPress */
define( 'DB_NAME', 'wordpress' );

/** Database username */
define( 'DB_USER', 'user' );

/** Database password */
define( 'DB_PASSWORD', 'pass' );

SELinuxの状態を確認します。

# getenforce
  Enforcing

色々と面倒なLinuxSEを切ります。
enforcingをdisabledにします。

# vi /etc/selinux/config

SELINUX=enforcing
↓
SELINUX=disabled

設定反映のためサーバを再起動します。

# reboot

無効化を確認

# getenforce
  Disabled

自身のIPアドレス/wordpress
でURLを叩くとWordPressの設定画面に飛ぶはずです。

終わりに

私の専門がプログラミングのため、インフラ構築は至らない面がありますが、社内SEになってくるとそうも言ってられなくなってきたので、今回はいい勉強になりました。

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?