コンテンツマネージメントシステムのWordPressをインストールする手順を記載します。
Table of Contents
1 WordPressをインストールする
- WORDPRESS_DOMAINをお使いの環境のFQDNに変更してください。
- この記事ではhttpsの為にデフォルトのSSL/TLS証明書を使っています。別にSSL/TLS証明書を用意している場合はそちらをお使いください。
- httpではなくhttpを使用する場合は、/etc/apache2/sites-available/wordpress.confにて、443を80にしてSSLXXXのディレクティブを削除してください。
#!/bin/sh set -e [ -z "${WORDPRESS_DOMAIN}" ] && \ WORDPRESS_DOMAIN=ubuntu-1710-wordpress.hiroom2.com [ -z "${WORDPRESS_SITENAME}" ] && \ WORDPRESS_SITENAME=wordpress MYSQL_VERSION=5.7 [ -z "${MYSQL_PASSWD}" ] && \ MYSQL_PASSWD=mysql mysql_install() { cat <<EOF | sudo debconf-set-selections mysql-server-${MYSQL_VERSION} mysql-server/root_password password ${MYSQL_PASSWD} mysql-server-${MYSQL_VERSION} mysql-server/root_password_again password ${MYSQL_PASSWD} EOF sudo apt install -y mysql-server } wordpress_install() { sudo apt install -y wordpress # Change filesystem access method from FTP to direct. # This will change plugin installation via FTP to plugin installation # with direct filesystem access. sudo sed -e "s/^<?php/<?php\ndefine('FS_METHOD', 'direct');/g" \ -i /usr/share/wordpress/wp-config.php TMP=$(mktemp -t wordpress.sh.XXXXXX) trap 'rm $TMP* 2>/dev/null' 0 zcat /usr/share/doc/wordpress/examples/setup-mysql.gz > "${TMP}" # You can select remote mysql server with -t option. # You can set mysql database username with -u option. sudo bash "${TMP}" -n "${WORDPRESS_SITENAME}" "${WORDPRESS_DOMAIN}" } apache_install() { sudo apt install -y apache2 cat <<EOF | sudo tee /etc/apache2/sites-available/wordpress.conf <VirtualHost _default_:443> SSLEngine on SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key ServerName ${WORDPRESS_DOMAIN} DocumentRoot /usr/share/wordpress/ DirectoryIndex index.php index.html ErrorLog /var/log/apache2/wp-error.log TransferLog /var/log/apache2/wp-access.log Alias /wp-content /var/lib/wordpress/wp-content <Directory /usr/share/wordpress> Options FollowSymLinks Require all granted </Directory> <Directory /var/lib/wordpress/wp-content> Options FollowSymLinks Require all granted </Directory> </VirtualHost> EOF sudo a2enmod ssl sudo a2ensite wordpress sudo systemctl enable apache2 sudo systemctl restart apache2 } wordpress_main() { mysql_install wordpress_install apache_install } wordpress_main
2 WordPressへアクセスする
WORDPRESS_DOMAINで設定したFQDNにhttps経由でアクセスします。ブラウザでこのページの証明書を許可してください。
https://<WORDPRESS_DOMAIN>