Protože se mi nepovedlo rychle rozběhnout gunicorn (nedával jsem teď pár let pozor, to je standard i pro produkci?), debuggoval jsem nainstalovaný balíček, našel podezřelou závislost libxml2, nainstaloval její systémový balík a následně udělal nový env a pip install, kde se leccos souvisejícího buildovalo. Moje chápání podstaty a zejm. odlišnosti mezi manage.py a wsgi je dost na vodě, ale třeba to přes noc docvakne. Kdybyste mi to někdo uměl jednoduše vysvětlit, budu nadšen stejně, jako že to už funguje :).
Každopádně dík moc za pomoc, John On Mon, Jun 19, 2017 at 12:20 PM Petr Messner <petr.mess...@gmail.com> wrote: > Přinejhorším můžeš kód toho balíku upravit (editovat přímo soubor v envu) > a dát si tam nějaké debug logování. > > A když si to spustíš přes gunicorn místo mod_wsgi, tak to funguje? Kdoví, > oproti jakému python interpretreu je ten mod_wsgi zkompilovaný. > > PM > > Dne 19. června 2017 11:02 Jan Walter <jnw...@gmail.com> napsal(a): > >> Díky moc za nápady. >> >> Metodu volám s jednoduchým modelovým vstupem totožným v obou případech. >> Vypsal jsem si v místě volání locals() a globals() (ne do hloubky). >> Jediný, co vidím jako odlišnost je cesta k importovaným balíčkům >> /home/ct/www/env/local/lib/python2.7/site-packages/django/db/models/__init__.pyc >> (apache) vs. >> /home/ct/www/env/lib/python2.7/site-packages/django/db/models/__init__.pyc >> (manage.py) >> nicméně local je jen link >> lrwxrwxrwx 1 ct ct 20 Jun 18 20:52 /home/ct/www/env/local/lib -> >> /home/ct/www/env/lib >> >> Apache běží pod jiným uživatelem (WSGIDaemonProcess má ale nastaven >> atribut user), je to asi dobrá hypotéza; i když jsem ale dal celýmu obsahu >> virtualenvu rwx, je to beze změny. Možná nějaký pracovní soubory, adresáře, >> rychle jsem prohlídl, jestli to něco čte (bez úspěchu), ještě to budu muset >> prozkoumat víc. Divný je, že to nepíše žádnou chybu, suverénně to vrátí ''. >> Je to v principu věc, která z jednoho řetězce udělá jiný bez dalších >> externalit. >> >> Dost možná přehlížím něco úplně triviálního, až to najdu, dám vědět. >> >> Ještě jednou díky. >> >> >> On Mon, Jun 19, 2017 at 8:57 AM Vláďa Macek <ma...@sandbox.cz> wrote: >> >>> Ahoj, >>> >>> to jsou nepříjemný problémy. Mimochodem, jakmile to půjde, opravdu >>> upgraduj >>> Django. >>> >>> Neznám premailer, ale vypadá to, že nemá nic společného s běhovým >>> prostředím/middlewary, takže by nemělo na způsobu spuštění záležet. >>> >>> Odhaduju, že bude mít jiné vstupy. V obou případech si "vytiskni" vše, co >>> leze do konstruktoru třídy Premailer a do té metody a porovnej, budou tam >>> rozdíly. >>> >>> Nezapomeň na objekty v globálních identifikátorech, které mohou taky >>> změnit >>> chování. Django settings je taky globální. Filesystém je globální. >>> Ovlivněn >>> může být i kód volaný z modulu premailer.py (nebo jím děděný, nebo i z >>> něj >>> děděný) a tedy to hned nevidíš. >>> >>> Vytiskni si i výstupy těsně před oběma returny. Je možné, že jsi se >>> přehlédl a problém bude někde jinde. Mozek je mrška a někdy sám sebe >>> přesvědčí o nesmyslu. >>> ( >>> http://s2.quickmeme.com/img/fe/fe6a68c7673a3ae9b8856a27ab2ddbe578daedd9755be7cda3182ed8252d3743.jpg >>> ) >>> >>> V. >>> >>> >>> On 19.6.2017 07:52, Jan Walter wrote: >>> > Ahoj, >>> > mám problém, se kterým si nevím moc rady. Spočívá v odlišnosti výsledku >>> > volání jedné specifické metody přes Apache mod_wsgi vs. vývojový server >>> > via manage.py runserver (nebo i interaktivní shell) v konzoli. >>> > >>> > 1. Django 1.5.4 (vím, není to soudobé). >>> > 2. Volám metodu transform z premailer knihovny >>> > ( >>> https://github.com/peterbe/premailer/blob/master/premailer/premailer.py#L279 >>> ). >>> > 3. Když to zavolám pomocí manage.py (runserver nebo shell), funguje >>> > naprosto OK - distribuuje styly do elementů vstupního dokumentu. >>> > 4. Když ji volám přes Apache, vrací prázdný řetězec, žádná chyba. >>> Stejný >>> > vstup, stejný virtual env. >>> > >>> > Máte nějakou ideu, co na to může mít vliv, co by mohlo být jinak, resp. >>> > co/jak debuggovat? Jsem už trochu bez nápadů. >>> > >>> > Dík moc za případnou inspiraci, >>> > John >>> >>> -- >>> -- >>> E-mailová skupina django-cs@googlegroups.com >>> Správa: http://groups.google.cz/group/django-cs >>> --- >>> Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny >>> django-cs ve Skupinách Google. >>> Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, >>> zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com. >>> Chcete-li zobrazit tuto diskusi na webu, navštivte >>> https://groups.google.com/d/msgid/django-cs/1e0c244c-708e-3ca0-2c86-df0732efd594%40sandbox.cz >>> . >>> Další možnosti najdete na adrese https://groups.google.com/d/optout. >>> >> -- >> -- >> E-mailová skupina django-cs@googlegroups.com >> Správa: http://groups.google.cz/group/django-cs >> --- >> Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny >> „django-cs“ ve Skupinách Google. >> Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, >> zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com. >> > Chcete-li tuto diskusi zobrazit na webu, navštivte >> https://groups.google.com/d/msgid/django-cs/CAK-vJU%3DRi0b4--HQX1%3DXxvAKjMDQS9BZDcHjFFxgCqn-t0W9YQ%40mail.gmail.com >> <https://groups.google.com/d/msgid/django-cs/CAK-vJU%3DRi0b4--HQX1%3DXxvAKjMDQS9BZDcHjFFxgCqn-t0W9YQ%40mail.gmail.com?utm_medium=email&utm_source=footer> >> . > > >> Další možnosti najdete na https://groups.google.com/d/optout. >> > -- > -- > E-mailová skupina django-cs@googlegroups.com > Správa: http://groups.google.cz/group/django-cs > --- > Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny > „django-cs“ ve Skupinách Google. > Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, > zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com. > Chcete-li tuto diskusi zobrazit na webu, navštivte > https://groups.google.com/d/msgid/django-cs/CAK9Q5BQRe7MaiVuYRC7N-b_w0PA8Dghdbq8zpsKymiPURJiTgw%40mail.gmail.com > <https://groups.google.com/d/msgid/django-cs/CAK9Q5BQRe7MaiVuYRC7N-b_w0PA8Dghdbq8zpsKymiPURJiTgw%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > Další možnosti najdete na https://groups.google.com/d/optout. > -- -- E-mailová skupina django-cs@googlegroups.com Správa: http://groups.google.cz/group/django-cs --- Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny django-cs ve Skupinách Google. Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com. Chcete-li zobrazit tuto diskusi na webu, navštivte https://groups.google.com/d/msgid/django-cs/CAK-vJU%3DcPjkywzwjom9RUhv%2BSnUMFjt9QeyVFd6M7s7nZa1vyA%40mail.gmail.com. Další možnosti najdete na adrese https://groups.google.com/d/optout.