Drupal 7 インストール

1 . Drupal のダウンロード

$ sitename=octaviadata.com
$ cd /var/www/html && sudo drush dl drupal-7 --drupal-project-rename=$sitename

2 . Drupal インストール

作成したフォルダに移動し、Drupalインストールスクリプト実行。sudo によってデータベースにはパスワードなしで接続されるため、ここではパスワード指定オプション「--db-su-pw=パスワード」を使用していない。

$ cd /var/www/html/$sitename
$ sudo drush si standard --db-url=mysql://dp_db_admin:dp_db_password@localhost/db_$sitename --db-su=root --site-name="example web site" --account-mail=octaviadata@outlook.com --site-mail=octaviadata@outlook.com
  • profile を使用しているテーマは、profile ディレクトリを移動してインストールする。commerce_kickstart の例
$ cd /var/www/html
$ sudo drush dl commerce_kickstart --drupal-project-rename=commerce_kickstart.local
$ cd commerce_kickstart.local/
$ sudo mv profiles/commerce_kickstart/modules/* sites/all/modules/
$ sudo drush si commerce_kickstart --db-url=mysql://dp_db_admin:dp_db_password@localhost/db_commerce_kickstart --db-su=root --site-name="commerce_kickstart site" --account-mail=octaviadata@outlook.com --site-mail=octaviadata@outlook.com

3 . 接続確認

Drupalインストール完了後、adminパスワードが表示されるので、ログインしてWEBサイトの接続を確認する。

You are about to create a sites/default/files directory and create a sites/default/settings.php file and CREATE  the 'db_example.com' database. Do you want to continue? (y/n): y
Starting Drupal installation. This takes a few seconds ...                     [ok]
Installation complete.  User name: admin  User password: zgXDVT2SoB            [ok]

4 . 基本モジュールのインストール

ライブラリ等のインストール。

$ cd /var/www/html/$sitename
$ sudo mkdir sites/all/libraries/jsonpath;sudo wget -c -O sites/all/libraries/jsonpath/jsonpath.php https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/jsonpath/jsonpath-0.8.1.php
$ sudo wget -P sites/all/libraries/fitvids https://raw.github.com/davatron5000/FitVids.js/master/jquery.fitvids.js
$ wget -cP /tmp https://github.com/fooplugins/FooTable/archive/V3.zip && unzip /tmp/V3.zip -d /tmp && sudo mv /tmp/FooTable-3/compiled sites/all/libraries/footable

モジュールのインストール。

$ sudo drush -y en \
admin_views aggregator back_to_top boolean_formatter \
bundle_copy \
context_layouts, context_ui, context \
libraries jquery_update pathauto token \
feeds_ex feeds_import feeds_ui feeds_news feeds_tamper_ui feeds_tamper feedspreview geofield_map, geofield \
ctools_ajax_sample, ctools_access_ruleset, ctools_custom_content, term_depth, bulk_export, views_content, stylizer, page_manager, ctools \
better_exposed_filters \
chosen \
draggable_captcha \
entity, entity_token entityreference \
field_collection field_group \
field_validation_extras, property_validation, field_validation, field_validation_ui \
floating_block \
fontawesome \
xmlsitemap_custom, xmlsitemap_taxonomy, xmlsitemap_menu, xmlsitemap_node, xmlsitemap_modal, xmlsitemap_engines, xmlsitemap \
admin_menu admin_menu_toolbar admin_devel \
link extlink \
date_repeat_field, date_popup, date_context, date_all_day, date_migrate, date_tools, date_api, date_repeat, date_views, date \
image_link_formatter \
insert \
devel devel_generate devel_node_access \
adsense_click adsense_managed revenue_sharing_basic adsense_search adsense \
file_entity media_internet media media_youtube media_vimeo media_flickr \
fitvids \
module_filter \
node_export_feeds, node_export_relation, node_export_features, node_export \
options_element \
pagepeeker \
prlp \
quicktabs quicktabs_tabstyles \
redirect \
responsive_favicons \
similarterms \
smtp \
strongarm \
tagclouds \
talk \
textformatter textformatter_contrib \
themekey_redirect, themekey_css, themekey_user_profile, themekey_compat, themekey_debug, themekey_ui, themekey, themekey_features \
toc_filter \
views_bulk_operations, actions_permissions \
views_ui views_fluid_grid \
webform \
ckeditor \
responsive_bartik \
imagecache_token transliteration \
optimizedb hacked path2ban spamicide ultimate_cron
$ !!

$ sudo drush -y en footable
$ sudo drush chosenplugin

不要モジュールの無効化。

$ drush -y dis toolbar overlay

5 . SSL対応

SSL対応ドメインにホスト追加の場合は、別途説明している証明書取得とNginx設定を先に行う。

  • SSL証明書の取得

1つの証明書に複数ドメインを対応

$ sudo letsencrypt certonly --webroot -w /var/www/html/example.com -d example.com -w /var/www/html/$sitename -d $sitename
  • Nginx 設定

Configuration Snippet

$ sudo vim /etc/nginx/snippets/ssl-example.com.conf
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
  • Nginx 設定ファイル
$ sudo vim /etc/nginx/sites-available/$sitename
server {

    # SSL configuration
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    include snippets/ssl-example.com.conf;
    include snippets/ssl-params.conf;
  • 設定の反映
$ sudo nginx -t && sudo nginx -s reload