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 <javascript:>> > >> 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/applications/$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/**applications/; >>> #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/**applications/*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/**whateverfile.css >>> web2py looks into /web2py/appname/static/it/**whateverfile.css and then >>> if not found into /web2py/appname/static/**whateverfile.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/* >>>> *default/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/**it/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 > --