Nginxurl_for
で with _external = True
(so: )を使用する場合、サーバー名をローカルホストに置き換えるにはどうすればよいですか?url_for('foobar', _external=True)
フラスコアプリケーションを実行しています。
nginx設定
server {
listen 80;
server_name _;
access_log /var/log/nginx/simplemadetutor.access.log;
error_log /var/log/nginx/simplemadetutor.error.log;
location / {
proxy_pass http://127.0.0.1:8000;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /static {
alias /home/implemad/www/simplemadetutor/app/static;
}
location /favicon.ico {
alias /home/implemad/www/simplemadetutor/app/static/img/favicon.ico;
}
}
問題は、私が見ているようなものを url_for('main.index', _external=True)
見る代わりに入力した場合ですhttp://simplemadetutor.com
http://127.0.0.1:8000/
SERVER_NAME = 'simplemadetutor.com'; を設定してみました。ただし、これは、url_for によって生成されるすべての URL の前に simplemadetutor.com を配置するように見えます。