古いドメインの転送がうまくいきません。personal/private なデータを削除した app.yml の全体を以下に示します。
## これはすべてを一つにまとめた、スタンドアロンの Discourse Docker コンテナ用テンプレートです
##
## このファイルを変更した後は、必ず再構築が必要です
## /var/discourse/launcher rebuild app
##
## 編集時は *非常に* 注意してください!
## YAML ファイルは、空白やアライメントの誤りに極めて敏感です!
## 必要に応じて http://www.yamllint.com/ でこのファイルを検証してください
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
- "templates/web.ratelimited.template.yml"
## Lets Encrypt (https) を追加したい場合は、以下の 2 行のコメントを外してください
- "templates/web.ssl.template.yml"
- "templates/web.letsencrypt.ssl.template.yml"
## このコンテナが公開すべき TCP/IP ポートはどれですか?
## Discourse を Apache や nginx などの別のウェブサーバーとポートを共有させたい場合は、
## https://meta.discourse.org/t/17247 を参照してください
expose:
- "80:80" # http
- "443:443" # https
params:
db_default_text_search_config: "pg_catalog.english"
## db_shared_buffers を総メモリの最大 25% に設定します。
## ブートストラップが検出した RAM に基づいて自動設定されますが、上書きすることも可能です
db_shared_buffers: "128MB"
## ソートパフォーマンスを向上させる可能性がありますが、接続ごとのメモリ使用量が増加します
#db_work_mem: "40MB"
## このコンテナで使用する Git リビジョンはどれですか?(デフォルト: tests-passed)
#version: tests-passed
env:
LANG: en_US.UTF-8
# DISCOURSE_DEFAULT_LOCALE: en
## 同時にサポートされるウェブリクエストの数はいくつですか?メモリと CPU コア数に依存します。
## ブートストラップが検出した CPU に基づいて自動設定されますが、上書きすることも可能です
UNICORN_WORKERS: 2
## TODO: この Discourse インスタンスが応答するドメイン名
DISCOURSE_HOSTNAME: old-domain.com
## 上記で指定したホスト名と同じ (-h オプション) でコンテナを起動したい場合は、コメントを外してください
#DOCKER_USE_HOSTNAME: true
## TODO: 初期登録時に管理者および開発者として設定されるメールアドレスのリスト(カンマ区切り)
## 例: 'user1@example.com,user2@example.com'
DISCOURSE_DEVELOPER_EMAILS: 'admin@old-domain.com'
## TODO: 新規アカウントの検証や通知送信に使用する SMTP メールサーバー
DISCOURSE_SMTP_ADDRESS: smtp.sparkpostmail.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: SMTP_Injection
DISCOURSE_SMTP_PASSWORD: "xxxxxxxxxxxxxxxxxxxx"
#DISCOURSE_SMTP_ENABLE_START_TLS: true # (オプション、デフォルトは true)
## Lets Encrypt テンプレートを追加した場合は、以下のコメントを外して無料の SSL 証明書を取得してください
LETSENCRYPT_ACCOUNT_EMAIL: tempemail@temp.com
## この Discourse インスタンスの CDN アドレス(取得用に設定)
## 詳細は https://meta.discourse.org/t/14857 を参照してください
#DISCOURSE_CDN_URL: //discourse-cdn.example.com
## Docker コンテナはステートレスです。すべてのデータは /shared に保存されます
volumes:
- volume:
host: /var/discourse/shared/standalone
guest: /shared
- volume:
host: /var/discourse/shared/standalone/log/var-log
guest: /var/log
## プラグインはここに記述します
## 詳細は https://meta.discourse.org/t/19157 を参照してください
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/team-melbourne-rgsoc2015/discourse-adplugin.git
after_web_config:
- replace:
filename: /etc/nginx/nginx.conf
from: /sendfile.+on;/
to: |
server_names_hash_bucket_size 64;
sendfile on;
- file:
path: /etc/nginx/conf.d/discourse_redirect_1.conf
contents: |
server {
listen 80;
server_name old-domain.com;
return 301 $scheme://new-domain.com$request_uri;
}
after_ssl:
- replace:
filename: "/etc/runit/1.d/letsencrypt"
from: /--keylength/
to: "-d old-domain.com -d new-domain.com --keylength"
## ビルド後に実行する任意のカスタムコマンド
run:
- exec: echo "Beginning of custom commands"
## 最初の登録時の 'From' メールアドレスを設定したい場合は、以下のコメントを外して変更してください
## 最初のサインアップメールを受け取った後、再度コメントアウトしてください。一度だけ実行すれば十分です
#- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
- exec: echo "End of custom commands"
正常な再構築後に確認しましたが、転送なしでただ読み込まれるだけです。コードに何が問題でしょうか?
注:ファイル「discourse_redirect_1.conf」は事前に作成されていませんでした。作成しておくべきでしょうか?