Kezdőoldal » Számítástechnika » Programozás » Python, Flask, hogyan tudom...

Python, Flask, hogyan tudom kezelni a subdomaineket?

Figyelt kérdés

Van egy egyszerű oldalam, ami a '/' route-ra (mydomain.org/) annyit tesz, hogy return "Home directory".

Hogyan tudnám lekezelni, hogyha valaki pl arra megy fel, hogy 'forum.mydomain.org/', és annak is a különböző route-jaira visszaadni valamit?


2020. júl. 14. 10:15
1 2
 1/15 A kérdező kommentje:
Az lemaradt, hogy már kipróbáltam, hogy @app.route('/', subdomain="test"), és azzal egy funkcióval return-be bedobni hogy "this is a subdomain", de ígyis a sima, subdomain nélküli route-ot hozza be.
2020. júl. 14. 10:19
 2/15 anonim ***** válasza:
A /etc/hosts-ban be van állítva a subdomain?
2020. júl. 14. 20:37
Hasznos számodra ez a válasz?
 3/15 A kérdező kommentje:
Nem, miért kellene?
2020. júl. 14. 21:31
 4/15 A kérdező kommentje:
Tehat, az egesz alkalmazas elerheto online,irtam is,hogy az a domain, mint pelda
2020. júl. 14. 21:32
 5/15 anonim ***** válasza:

Én a subdomain címzését blueprint használatával oldom meg, de nem biztos, hogy ez a legcélszerűbb módja. Valami ilyesmit csinálok:


from flask import Blueprint


bp = Blueprint('diagram', __name__, url_prefix=os.environ['BASE_PATH'])



Ezen a so oldalon azért jobban össze van szedve:

[link]


app.register_blueprint(bp)

2020. júl. 15. 16:33
Hasznos számodra ez a válasz?
 6/15 anonim ***** válasza:
Az, hogy az url_prefix nem hardcoded, hanem egy környezeti változóból van előhúzva lehetővé teszi, hogy a kód a futtató környezet függvényében más sub domain alá legyen "deploy-olva". pl. /dev/, /staging/ etc.
2020. júl. 15. 16:36
Hasznos számodra ez a válasz?
 7/15 A kérdező kommentje:
Szuper, köszi!:)
2020. júl. 15. 19:04
 8/15 A kérdező kommentje:

A blueprint-es módszerrel azt írja, hogy hiba, nincs definiálva a port, de ha megadom neki a portot, akkor azt írja, hogy

UserWarning: Current server name 'mydomain.org:443' doesn't match configured server name 'mydomain.org'


Ha nem adok meg neki portot, akkor meg ezt:


port = int(next((p for p in (port, sn_port) if p is not None), _port))

ValueError: invalid literal for int() with base 10: ''

2020. júl. 15. 19:45
 9/15 A kérdező kommentje:
Hát, végül a blueprinttel lett megoldva a probléma szóval köszi! A SERVER_NAME- konfigot kellett kiszedni hogy működjön.
2020. júl. 15. 21:27
 10/15 anonim ***** válasza:

"UserWarning: Current server name 'mydomain.org:443' doesn't match configured server name 'mydomain.org'"

Nekem ugy tunik, hogy ez a deploymenttel osszefuggo problema. Hogyan publikalod a weboldalt? En gunicorn-t hasznalok, es semmi ilyesmit nem kell beallitani.

2020. júl. 15. 21:27
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!