Fedora 29: CMSのJoomlaをインストールする

コンテンツマネージメントシステムのJoomlaをインストールする手順を記載します。

1 Joomlaをインストールする

  • この記事ではhttpsの為にデフォルトのSSL/TLS証明書を使っています。別にSSL/TLS証明書を用意している場合はそちらをお使いください。
  • httpではなくhttpを使用する場合は、/etc/httpd/conf.d/joomla.confにて、443を80にしてSSLXXXのディレクティブを削除してください。
  • JOOMLA_PASSWDはMySQLで使うjoomlaユーザのパスワードです。
#!/bin/sh -e

[ -z "${JOOMLA_PASSWD}" ] && \
  JOOMLA_PASSWD=joomla_passwd

mysql_install()
{
  sudo dnf install -y mariadb-server
  sudo systemctl enable mariadb
  sudo systemctl start mariadb

  cat<<EOF | sudo mysql -u root
grant all privileges on joomla.* to joomla@localhost
  identified by '${JOOMLA_PASSWD}';
exit
EOF
}

phpmyadmin_install()
{
  sudo dnf install -y phpMyAdmin
}

joomla_install()
{
  # php is configured with --with-curl.
  sudo dnf install -y php-mysqlnd php-json
  JOOMLA3=https://downloads.joomla.org/cms/joomla3

  wget -q ${JOOMLA3}/3-8-13/Joomla_3-8-13-Stable-Full_Package.tar.bz2
  sudo mkdir -p /var/www/joomla
  sudo tar jxf Joomla_3-8-13-Stable-Full_Package.tar.bz2 -C /var/www/joomla
  rm -f Joomla_3-8-13-Stable-Full_Package.tar.bz2
}

apache_install()
{
  sudo dnf install -y httpd mod_ssl

  sudo chown -R apache:root /var/www/joomla

  cat <<EOF | sudo tee /etc/httpd/conf.d/joomla.conf
<VirtualHost _default_:443>
  SSLEngine on
  SSLCertificateFile /etc/pki/tls/certs/localhost.crt
  SSLCertificateKeyFile /etc/pki/tls/private/localhost.key

  Alias /joomla /var/www/joomla

  <Directory /var/www/joomla>
    Options FollowSymLinks
    Require all granted
  </Directory>
</VirtualHost>
EOF

  sudo setsebool -P httpd_unified 1
  sudo systemctl enable httpd
  sudo systemctl restart httpd
  sudo firewall-cmd --add-service=https --permanent
  sudo firewall-cmd --reload
}

joomla_main()
{
  mysql_install
  phpmyadmin_install
  joomla_install
  apache_install
}

joomla_main

2 Joomlaへアクセスする

以下のURLにアクセスしてJoomlaをセットアップします。ブラウザでこのページの証明書を許可してください。

データベースのユーザ名はjoomlaでパスワードはJOOMLA_PASSWDの値を設定してください。

https://<server>/joomla

0001_Joomla.png