app.config['SERVER_NAME'] = "mysite.com" #工具頁藍圖註冊,用tool子域名 from .tool import tool as tool_blueprint app.register_blueprint(tool_blueprint, subdomain='tool')
url_for('tool.index'),就是tool.mysite.com
還有個問題:url_for('static')居然是mysite.com的域名,導致css之類的靜態文件全部無法訪問
解決辦法:自定義static路由,自己加上子域名。
開啓SERVER_NAME和sub_domain子域名之後,static需要使用add_url_rule重新自己添加路由
而且要自己添加的static路由生效,必須開頭的Flask先將static_folder=None才行,app = Flask(__name__, static_folder=None)