apache, ugswi, колба, проблема со связью - PullRequest
0 голосов
/ 23 декабря 2018

У меня проблема с моим маленьким проектом.Я пытаюсь реализовать loadbalancer на веб-сервере apache, который будет отправлять все входящие запросы на два сервера приложений с помощью uwsgi + flask.

My web serwer ip is: 10.0.0.10
App1: 10.0.0.8
App2: 10.0.0.9

Все нормально, когда у меня такая ситуация:

app = Flask(__name__)
@app.route('/')
def index():
   return render_template('heh.html')

Тогда мой URL-адрес 10.0.0.10 и отображается содержимое heh.html.Так что это хорошо, но ..

Моя проблема начинается, когда я пытаюсь проложить маршрут в другое место, например:

@app.route('/project/')
def project():
   return "I'm App 1"

, когда я пытаюсь подключиться через браузер с: 10.0.0.10/проекты Тогда мой URL-адрес меняется на 10.0.0.8/projects или 10.0.0.9/projects, и у меня есть информация, что «Соединение отклонено»

Моя конфигурация Apache на веб-сервере ниже:

<Proxy balancer://mycluster>
BalancerMember http://10.0.0.8:8081
BalancerMember http://10.0.0.9:8081
</Proxy>

<Location /balancer-manager>
SetHandler balancer-manager
</Location>

ProxyPass /balancer-manager !
ProxyPass / balancer://mycluster/

Конфигурация Uwsgi на узлах приложения:

[uwsgi]
chdir = /opt/uwsgi
wsgi-file = myflaskapp.py
http-socket = :8081
processes = 20
threads = 10
stats = :8082
callable = app
uid = klopsiu
harakiri = 50
logto = /var/log/uwsgi/uwsgi.log

Файл моего приложения:

from flask import Flask, render_template, redirect, url_for, current_app

app = Flask(__name__)
@app.route('/')
def index():
    return render_template('heh.html')

@app.route('/projects/')
def projects():
    return "I'm app 1"

if __name__ == '__main__':
    app.run(debug=True, host='0.0.0.0')

Пожалуйста, сообщите.Я не хочу использовать обратный прокси-сервер. Я хочу, чтобы все работало с помощью loadbalancer.

Спасибо и жду вашей помощи:)

1 Ответ

0 голосов
/ 23 декабря 2018

Это была моя ошибка, я забыл, что когда я пытаюсь получить доступ к URL-адресу фляги, мне просто нужно добавить / в конце, например: 10.0.0.10/database/

...