Я написал веб-приложение в Flask, затем решил использовать Apache для его развертывания:
<VirtualHost *:80>
WSGIScriptAlias /app /var/www/flask-app/flask-app.py
<Directory /var/www/flask-app>
Require all granted
</Directory>
</VirtualHost>
Но теперь такие ссылки, как:
<a href='/login'>Sign in</a>
Перейдите в /login
вместо /app/login
. Есть ли способ исправить это, не изменяя все URL-адреса?
Поскольку PJ Santoro сказал, что вы должны использовать url_for
. Это выводит двусмысленность из маршрутов.
<a href='{{ url_for('route_function_name') }}'>Sign in</a>
Где:
@routes.route('/login', methods=['GET'])
def route_function_name():
return 'blah'
WSGIScriptAlias / /var/www/...
но если вы используете IDE (например, PyCharm), все они имеют некоторую поддержку глобального поиска / замены проекта ... возможно, довольно простая задача сделать их относительными ссылками.