yep, I've added it under the location / and it worked. You are right it might be placed in the main configuration, on the other hand today at work I was blocked because unable to upload files greaten than 1M. From my point of view we should at least mention it. For what concerns gzip is that on ubuntu server I can see that is already enabled by default. paolo
2013/1/23 niphlod <niph...@gmail.com> > uhm. this is outside the scope of the location .... I mean... probably > you'd like to turn on gzip too, but that is a feature to enable on nginx > "main" conf, not in the "web2py" one .... > Anyway, did you put this setting inside the file > /etc/nginx/sites-available/web2py and it just works ok ? > > > 2013/1/23 paolo.vall...@gmail.com <paolo.vall...@gmail.com> > >> 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 <niph...@gmail.com> >> >>> 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 <nip...@gmail.com> >>>> >>>> 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 <massimo....@gmail.com> >>>>>>> >>>>>>>> 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 <ml.richa...@gmail.com> >>>>>>>>> >>>>>>>>>> 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 < >>>>>>>>>> massimo....@gmail.com> 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 <nip...@gmail.com> >>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> @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 >>>> >>> -- >>> >>> >>> >>> >> -- >> >> >> >> > > -- > > > > -- Paolo --