In the meanwhile I discovered that if you upload a file greater than 1M, I tried with a 1.5M, you will get a 413 error. In order to avoid this error for file not so big, I suggest you to add the directive *client_max_body_size *and to set it at something more 'common' for me few MB is already ok. see here: http://wiki.nginx.org/HttpCoreModule#client_max_body_size paolo
2013/1/23 Niphlod <[email protected]> > ok, I'll test it more @home and then add a commented section to the script > > PS: that site you posted ..... turn off response.optimize_js = 'inline' > pleeease :P > > > On Wednesday, January 23, 2013 11:19:34 AM UTC+1, Paolo valleri wrote: > >> Just tested, it works, I've already upgraded the production server too :-P >> I would suggest to add it (maybe as a comment) to the script. >> Thanks, Paolo >> >> >> 2013/1/22 Niphlod <[email protected]> >> >> maybe I have a fix . >>> Can you please test it ? >>> assuming an example of routes.py like >>> >>> myapp = dict(languages=['en', 'it', 'jp'], default_language='en') >>> >>> >>> this means that navigating to: >>> /myapp/ --> the static files will be referenced as >>> web2py_home/applications/**myapp/en/static/whatever.css >>> /myapp/it/ --> the static files will be referenced as >>> web2py_home/applications/**myapp/it/static/whatever.css >>> >>> however, direct requests to /myapp/static/whatever.css should map to >>> web2py_home/applications/**myapp/en/static/whatever.css >>> >>> additionally, if /myapp/it/static/whatever.css is requested, if not >>> found web2py_home/applications/**myapp/static/whatever.css should be >>> served. >>> >>> Now, I think that adding this section before the standard one will fix >>> the issue >>> >>> location ~* /(\w+)/(en|it|jp)/static/(.*)$ { >>> alias /home/www-data/web2py/applicat**ions/$1/; >>> try_files static/$2/$3 static/$3 =404; >>> } >>> >>> (en|it|jp) here is the regex matching the "languages" list of the routes >>> app's dict .... This will set for the request /myapp/it/static/whatever.css >>> the alias to the web2py_home/applications/**myapp/ and then try to >>> serve static/it/whatever.css, if not found, it will fall back to a "normal" >>> static/whatever.css, and if that one is not found will return a 404. >>> >>> @Jonathan: please stop me if I did miss something in the routes logic >>> @all : seems a simple fix - maybe too simple... please help test it >>> >>> >>> On Tuesday, January 22, 2013 9:14:26 PM UTC+1, Niphlod wrote: >>>> >>>> got it. can you post the routes.py you're using ? >>>> >>>> The problem lies in the fact that routes.py is really flexible and >>>> adapting that logic using only rewrite or alias statements in nginx is >>>> cumbersome. >>>> Standing on one feet (i.e. without tests) I'd say that the regex >>>> checking static files >>>> >>>> location ~* /(\w+)/static/ { >>>> root /home/www-data/web2py/**applicat**ions/; >>>> #remove next comment on production >>>> >>>> >>>> #expires max; >>>> } >>>> >>>> is catching it as the app name and not the language "trick" . so, for a >>>> request going to /it/app/static/whatever.css is looking into >>>> >>>> >>>> >>>> /home/www-data/web2py/**applicat**ions/*it/*appname/**static/**whatever.css >>>> instead of ..... (remove the bold part, "*it/*"). >>>> >>>> If you remove those lines web2py will take charge for static files >>>> serving, so the issue will be temporarily fixed. >>>> >>>> I'll try to set up some additional rules to make nginx behave like >>>> routes.py, but it will take some time. >>>> >>>> PS: please mind that the script it's a template.... it's not meant to >>>> fullfill every custom installation patterns out there without further >>>> tuning. >>>> language routing is probably the most difficult out there because for a >>>> request >>>> /it/appname/static/**whateverfil**e.css >>>> web2py looks into /web2py/appname/static/it/**what**everfile.css and >>>> then if not found into /web2py/appname/static/**whateve**rfile.css (a >>>> nice fallback, but hard to map with a simple nginx statement) >>>> >>>> On Tuesday, January 22, 2013 6:14:55 PM UTC+1, Paolo valleri wrote: >>>>> >>>>> Hi Massimo, for example, if I visit this traffic.integreen-life.bz.it/ >>>>> **d**efault/wiki/about<http://traffic.integreen-life.bz.it/default/wiki/about> >>>>> (default is the controller and wiki is the function) it works while >>>>> traffic.integreen-life.bz.it/**i**t/default/wiki/about<http://traffic.integreen-life.bz.it/it/default/wiki/about>the >>>>> application works very well but the static links do not. >>>>> >>>>> Paolo >>>>> >>>>> >>>>> 2013/1/22 Massimo Di Pierro <[email protected]> >>>>> >>>>>> can you show an example? >>>>>> >>>>>> >>>>>> On Tuesday, 22 January 2013 07:36:39 UTC-6, Paolo valleri wrote: >>>>>> >>>>>>> Hi all, I've just discovered that the regex used to retrieve the >>>>>>> static files doesn't work if I use languages abbreviation in urls. >>>>>>> How can we fix this? >>>>>>> >>>>>>> >>>>>>> >>>>>>> 2012/12/28 Richard Vézina <[email protected]> >>>>>>> >>>>>>>> Hello, >>>>>>>> >>>>>>>> I publish a new script that allow deployment of Redmine beside >>>>>>>> web2py. >>>>>>>> >>>>>>>> Here : https://groups.google.com/**fo**** >>>>>>>> rum/?fromgroups=#!searchin/**web****2py/redmine/web2py/** >>>>>>>> ZqL7Si8Khbo****/Es-wK1yXdgQJ<https://groups.google.com/forum/?fromgroups=#!searchin/web2py/redmine/web2py/ZqL7Si8Khbo/Es-wK1yXdgQJ> >>>>>>>> >>>>>>>> Notice : After some read, I choose Unicorn over Phussion Passenger. >>>>>>>> >>>>>>>> Richard >>>>>>>> >>>>>>>> >>>>>>>> On Thu, Dec 20, 2012 at 9:57 AM, Massimo Di Pierro < >>>>>>>> [email protected]> wrote: >>>>>>>> >>>>>>>>> please email me the patch of latest file when ready for inclusion. >>>>>>>>> >>>>>>>>> >>>>>>>>> On Thursday, 20 December 2012 03:18:20 UTC-6, Niphlod wrote: >>>>>>>>>> >>>>>>>>>> perfect, Ccing Massimo on this final one. >>>>>>>>>> >>>>>>>>>> Il giorno giovedì 20 dicembre 2012 00:16:25 UTC+1, Paolo ha >>>>>>>>>> scritto: >>>>>>>>>>> >>>>>>>>>>> Hi >>>>>>>>>>> I was trying with the script that comes with the stable web2py. >>>>>>>>>>> with the one on dropbox I problem has gone. >>>>>>>>>>> >>>>>>>>>>> Paolo >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> 2012/12/19 Niphlod <[email protected]> >>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> @Simone, an other improvement to the script could be to combine >>>>>>>>>>>>> into a single server the 80, and 443 to avoid duplicating >>>>>>>>>>>>> configuration, as >>>>>>>>>>>>> stated here : >>>>>>>>>>>>> http://nginx.org/en/docs/http/********** >>>>>>>>>>>>> configuring_https_servers.**html******** >>>>>>>>>>>>> #single_http_https_server<http://nginx.org/en/docs/http/configuring_https_servers.html#single_http_https_server> >>>>>>>>>>>>> I don't had test this. >>>>>>>>>>>>> >>>>>>>>>>>>> Also, here the code for permanent redirection >>>>>>>>>>>>> server { >>>>>>>>>>>>> server_name $hostname; >>>>>>>>>>>>> listen 80; >>>>>>>>>>>>> return 301 http*s*://$hostname$request_uri; # NOTE: I am >>>>>>>>>>>>> not sure for $hostname here, because I didn't set hostname for my >>>>>>>>>>>>> VM until >>>>>>>>>>>>> now, as in the example (URL below) we can use domainName.com >>>>>>>>>>>>> instead if >>>>>>>>>>>>> properly configure in nginx >>>>>>>>>>>>> ... >>>>>>>>>>>>> } >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>> People may want separate configs for http and https. The script >>>>>>>>>>>> objective is to have a working copy of web2py. If we start to >>>>>>>>>>>> follow such >>>>>>>>>>>> requests, we'd end up installing postgresql and redis too :P >>>>>>>>>>>> >>>>>>>>>>>> @Paolo: try the script found at the dropbox link. If the same >>>>>>>>>>>> error happens I think we need the log of pip and a hand by Roberto >>>>>>>>>>>> on the >>>>>>>>>>>> specific error... >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> Paolo >>>>>>>>>>> >>>>>>>>>> -- >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Paolo >>>>>>> >>>>>> -- >>>>>> >>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Paolo >>>>> >>>> -- >>> >>> >>> >>> >> >> >> >> -- >> Paolo >> > -- > > > > --

