Table of Contents
1 Install Drupal
- This article uses default SSL/TLS certicication file for https. Please change your SSL/TLS certification file.
- If you use http instead of https, change 443 to 80 and delete SSLXXX directive in /etc/apache2/sites-available/drupal.conf.
- MYSQL_PASSWD is password of root user in MySQL and DRUPAL_PASSWD is password of drupal7 user in MySQL.
#!/bin/shset -eMYSQL_VERSION=5.7[ -z “${MYSQL_PASSWD}” ] && MYSQL_PASSWD=mysql[ -z “${DRUPAL_PASSWD}” ] && DRUPAL_PASSWD=drupalpostfix_install(){ cat <<EOF | sudo debconf-set-selectionspostfix postfix/main_mailer_type select No configurationEOF sudo apt install -y postfix cat <<EOF | sudo tee /etc/postfix/main.cfcompatibility_level = 2command_directory = /usr/sbindaemon_directory = /usr/lib/postfix/sbindata_directory = /var/lib/postfixmail_owner = postfixmyhostname = localhostinet_interfaces = allmydestination = localhostlocal_recipient_maps = unix:passwd.byname $alias_mapsunknown_local_recipient_reject_code = 550mynetworks_style = subnetmynetworks = 127.0.0.0/8alias_maps = hash:/etc/aliasesalias_database = hash:/etc/aliasessmtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5sendmail_path = /usr/sbin/postfixnewaliases_path = /usr/bin/newaliasesmailq_path = /usr/bin/mailqsetgid_group = postdropinet_protocols = ipv4EOF sudo newaliases sudo systemctl enable postfix sudo systemctl restart postfix}mysql_install(){ cat <<EOF | sudo debconf-set-selectionsmysql-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}drupal_install(){ cat <<EOF | sudo debconf-set-selectionsdrupal7 drupal7/dbconfig-install boolean truedrupal7 drupal7/mysql/admin-pass password ${MYSQL_PASSWD}drupal7 drupal7/password-confirm password ${MYSQL_PASSWD}drupal7 drupal7/mysql/app-pass password ${DRUPAL_PASSWD}drupal7 drupal7/app-password-confirm password ${DRUPAL_PASSWD}EOF sudo apt install -y drupal7}apache_install(){ sudo apt install -y apache2 libapache2-mod-php sudo mv /etc/apache2/conf-available/drupal7.conf /etc/apache2/conf-available/drupal7.conf.orig cat <<EOF | sudo tee /etc/apache2/conf-available/drupal7.conf<VirtualHost _default_:443> SSLEngine on SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key$(sed -e ‘s/^/ /g’ /etc/apache2/conf-available/drupal7.conf.orig)</VirtualHost>EOF sudo a2enmod php7.1 sudo a2enmod ssl sudo a2enconf drupal7 sudo systemctl enable apache2 sudo systemctl restart apache2}drupal_main(){ postfix_install mysql_install drupal_install apache_install sudo reboot}drupal_main
2 Access to Drupal
Access to the following URL and setup Drupal. Accept this page’s certification to browser.
https://<server>/drupal7/install.php
After setup, access to the following URL and Drupal is displayed.
https://<server>/drupal7/