Wordpress LAMP構築 スクリプト

LAMP環境 + WordPress一撃構築シェルスクリプト

wordpress 構築 シェルスクリプト

 作成したシェルスクリプト詳細

LinuxにApache, MySQL, PHPとWordpressをインストールする時間の掛かる作業を、シェルスクリプトを一回実行すると一発で環境が整うようにします。

 

まずはwordpress_lamp.shなどのファイルを作り、実行権限を与える。

$ touch wordpress_lamp.sh
$ chmod +x wordpress_lamp.sh

 作成したシェルスクリプト詳細

  • rootユーザーで実行する
  • LinuxディストリビューションはCentOS
  • Apache, MySQL, PHPをこれからインストールするPC対象

 実行条件

wordpress lamp 一発構築スクリプト

 

以下は一発作成シェルスクリプトのソースコード

# 変数定義 => MySQLの設定で必須
database=wordpress
user=wp_user
password=password
host_name=localhost



# yumで必要なものインストール
yum -y install httpd mysql-server php php-mysql wget


# ポート開放
service iptables restart
iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT


# Apacheの起動、自動起動設定
service httpd restart
chkconfig httpd on


# PHPの設定ファイルのバックアップ、timezoneの設定
cp /etc/php.ini /etc/php.ini.org
sed -i -e "s/date\.timezone =/date\.timezone = Asia\/Tokyo/g" /etc/php.ini
#設定を反映
service httpd restart


# WordPressのダウンロードと解凍
wget http://ja.wordpress.org/wordpress-4.3-ja.tar.gz
tar zxvf wordpress-4.3-ja.tar.gz


# WordPressファイルを/var/www/配下にコピーし、apacheで読み込めむ
cp -r wordpress /var/www/
chown -R apache.apache /var/www/wordpress

# /etc/httpd/conf/httpd.confのバックアップと編集
cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.org
sed -i -e "s/\/var\/www\/html/\/var\/www\/wordpress/g" /etc/httpd/conf/httpd.conf
sed -i -e "s/Directory \//Directory \/var\/www\/wordpress/g" /etc/httpd/conf/httpd.conf
sed -i -e "s/AllowOverride None/AllowOverride All/g" /etc/httpd/conf/httpd.conf

#Apachenのバージョン非表示
sed -i -e "s/ServerTokens OS/ServerTokens Prod/g" /etc/httpd/conf/httpd.conf



# MySQLの起動と設定
service mysqld start
chkconfig mysqld on
mysql -u root  -e "create database $database"
mysql -u root  -e "grant all privileges on $database.* to $user@$host_name identified by '$password'"



# wp-config.phpのバックアップ
# WordPressへデータベースの設定を書き込む
cp /var/www/wordpress/wp-config-sample.php /var/www/wordpress/wp-config.php

sed -i -e "s/define('DB_NAME', 'database_name_here')/define('DB_NAME', '$database')/g" /var/www/wordpress/wp-config.php
sed -i -e "s/define('DB_USER', 'username_here')/define('DB_USER', '$user')/g" /var/www/wordpress/wp-config.php
sed -i -e "s/define('DB_PASSWORD', 'password_here')/define('DB_PASSWORD', '$password')/g" /var/www/wordpress/wp-config.php
sed -i -e "s/define('DB_HOST', 'localhost')/define('DB_HOST', '$host_name')/g" /var/www/wordpress/wp-config.php
sed -i -e "s/define('DB_CHARSET', 'utf8')/define('DB_CHARSET', 'utf8')/g" /var/www/wordpress/wp-config.php


# httpd.confの反映
service httpd restart

 

 

2行 ~ 5行はMySQLで設定するデータベース名、ユーザー名、パスワード、ホスト名なので変数にして

適宜、置き換えられるようにした。

 

MySQLがもしもインストール済み、かつMySQLのrootユーザにパスワードを付与している場合は、

53,54行目の部分を以下のように-pオプションを付け足してください。

mysql -u root -p -e "create database $database"
mysql -u root -p -e "grant all privileges on $database.* to $user@$host_name identified by '$password'"

-p をつけるとMySQLに接続する際に設定したパスワードを要求されます。

 

シェルスクリプトは ./wordpress_lamp.sh とコマンドラインで打つと実行できる。

$ ./wordpress_lamp.sh

 

LAMP WordPress 一撃構築シェルスクリプト

 

LAMP環境 + WordPress が出来上がるまで約1分。

とても便利です。

 

* 実行後はブラウザから、LAMP+WordpressをインストールしたサーバのIPアドレスにアクセスするとWordpressの画面が表示されます。

Wordpress LAMP構築 スクリプト

 

Wordpress LAMP構築 スクリプト
最新情報をチェックしよう!

成田拓哉の最新記事8件

>システム構築・保守に特化した会社です。

システム構築・保守に特化した会社です。

システムの構築・保守運用「システムガーディアン」 社内システム担当が欲しいが、専属で雇うほどの仕事量はない。 必要な時に必要なだけ頼りたいというお悩みを持つ企業様へ専門知識を持って対応を行っております。 サーバから各種システムまで自社・他社で構築されたシステムに対してサポートを行っております。

CTR IMG