World: r3wp
[!Cheyenne] Discussions about the Cheyenne Web Server
older newer | first last |
Graham 13-Apr-2007 [374] | Is Cheyenne's http log standard? Does it come with any Vid tools for analysis? |
Dockimbel 13-Apr-2007 [375] | Yes it's standard. No analyzing tools, did anyone wrote such tool in REBOL ? |
Maxim 13-Apr-2007 [376] | VID? what's that ;-) |
Dockimbel 13-Apr-2007 [377] | I'd like to something like Webalizer (http://www.mrunix.net/webalizer/) done in REBOL. |
btiffin 13-Apr-2007 [378] | I'm thinkin' ez-plot/q-plot might be a nice place to start for that app. Hmmm. |
Graham 13-Apr-2007 [379] | I wrote a core based analysis tool some years ago .. dunno where it is now! |
btiffin 13-Apr-2007 [380] | Great minds think...fire and forget...alike :) |
Chris 23-Apr-2007 [381] | How would you do the following in Cheyenne? RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.+) /cgi-bin/qm.r [QSA,L] Also, is there an equivalent to -- get-env "REQUEST_URI" -- in Cheyenne? |
Pekr 23-Apr-2007 [382x2] | Can you translate what does it do? My primitive rsp system just needs .httaccess modification, setting rebol handler for .html being processed by rsp.cgi ...... so all files have to be "in place". |
What is advantage of your aproach? (Just asking, as I dunno what mod rewrite is good for) | |
Chris 23-Apr-2007 [384] | This rewrite rule takes any request (third line) for a file that doesn't exist (second line) and redirects to my cgi script. |
Pekr 23-Apr-2007 [385] | hah, nice - so, the thing is, that I can have URI, while file does not be located at that place? Kind of "virtual file"? :-) |
Chris 23-Apr-2007 [386] | The advantage of this is that my cgi script can make decisions based on the full request, not just the query string. |
Pekr 23-Apr-2007 [387] | what do you mean by "the full request"? |
Chris 23-Apr-2007 [388] | For example, from this url: http://foo.com/pages/edit/1-- I get the Request_Uri value "/pages/edit/1" then parse it -- ["pages" "edit" "1"] -- here I have a controller, and action and an id. It is a more enduring approach than http://foo.com/cgi-bin/qm.r?controller=pages&action=edit&id=1 |
Pekr 23-Apr-2007 [389] | why do you regard it being a difference? |
Chris 23-Apr-2007 [390] | This is veering OT, so I'll point you here: http://www.w3.org/Provider/Style/URI http://www.alistapart.com/articles/succeed/ http://www.alistapart.com/articles/urls/ We can discuss further in 'Web' |
Dockimbel 23-Apr-2007 [391x4] | RE: get-env "REQUEST_URI" : using the CGI or the RSP handler ? |
The Rewriting engine for Cheyenne has not been implemented yet. I know that Will developed a simple one for Cheyenne/RSP based on PARSE rules. | |
Re: REQUEST_URI, in CGI mode => all request parameters are in system/options/cgi | |
Re: REQUEST_URI, in RSP mode => all request parameters are in request/in (deprecated in the upcoming version) | |
Chris 23-Apr-2007 [395] | Looking for it in the CGI handler. Request_URI isn't in the system/options/cgi block -- even using Apache, I have to do get-env "REQUEST_URI" |
Dockimbel 23-Apr-2007 [396x2] | You should be able to obtain an equivalent to REQUEST_URI by join several values from system/options/cgi. |
join => joining | |
Chris 23-Apr-2007 [398x3] | Except without being able to rewrite, the request_uri will always be the same... |
If I type http://localhost/pages/this-- I need to run /cgi/qm.r and have access to '/pages/this' | |
I haven't delved deep enough to understand if this'd be better written as a Cheyenne handler, though that would require forking the cgi script, which for the time being, also has to run under Apache. | |
Dockimbel 23-Apr-2007 [401x2] | I see the problem. |
If I give you a customized Cheyenne handler for QM that can check URLs (with parse rules) and send them to /cgi/qm.r before checking the local filesystem, would it suit your needs ? | |
Graham 23-Apr-2007 [403x4] | Sounds good. |
Isn't this how Zope works? | |
The whole Zope website is just a huge Python object, and when you access a path, the Zope webserver executes the object referred to ... | |
But you can remap paths on the fly | |
Dockimbel 23-Apr-2007 [407] | Don't know how Zope handles rewriting, but the solution I've proposed to Chris is quite specific (even if it could be parameterized). The solution I had in mind for a Rewriting engine would be much more generic. |
Graham 23-Apr-2007 [408] | A few of us are experiementing with Chris' project .. so something that just sends everything to qm.cgi or qm.r would be helpful. |
Dockimbel 23-Apr-2007 [409] | The Mod-MapURL that I'll provide in the next release will act like that, mapping URLS to REBOL objects (with nesting supported). |
Graham 23-Apr-2007 [410] | so, the application could just be a large object? Or the objects are on disk? |
Dockimbel 23-Apr-2007 [411] | in-memory objects |
Graham 23-Apr-2007 [412x2] | Ok. |
From memory Zope has a disk based object database ... | |
Dockimbel 23-Apr-2007 [414] | All the application in a large object, if you design it like that, sure. |
Graham 23-Apr-2007 [415] | How's sessions going? :) |
Dockimbel 23-Apr-2007 [416x3] | Yes, I know about ZODB, quite interesting OODB. |
Very well, I'm currently testing the whole RSP framework by building a "test" application : a new web-based bugtracker ;-) | |
It helps me tweak the session system and add some small but useful features. | |
Graham 23-Apr-2007 [419x2] | bootstrapping ? |
Anyway, sounds like progress is being made :) | |
Dockimbel 23-Apr-2007 [421x3] | Yes, I quite happy with the speed and stability of the new implementation, I have RSP pages with 3 SQL queries to a MySQL backend, input and output filters, session handling, tables constructed dynamically with data from DB, all this occuring in a few milliseconds...I still need to test how it scales. |
I => I'm | |
RSP now supports a thin layer for easier DB access. No need to open/close connections, they are persistent and pooled. | |
older newer | first last |