World: r3wp
[!Cheyenne] Discussions about the Cheyenne Web Server
older newer | first last |
Dockimbel 12-Oct-2006 [149] | Are you using the exe version or source version ? What OS ? Any crash.log file found ? |
Louis 12-Oct-2006 [150] | Both versions act the same. Win XP Home. No crash.log file found. This is what loads: [uniserve] Async Protocol FastCGI loaded [uniserve] Starting task-master... [uniserve] Starting HTTPd... |
Dockimbel 12-Oct-2006 [151] | Can you give me details on what is failing precisely ? |
Louis 12-Oct-2006 [152] | Test CGI script Test RSP script Test RSP WebApp |
Dockimbel 12-Oct-2006 [153] | What error message do you have ? |
Louis 12-Oct-2006 [154x3] | For the RSP WebApp test I get: The page cannot be displayed The page you are looking for is currently unavailable. The Web site might be experiencing technical difficulties, or you may need to adjust your browser settings. |
For Text CGI script I get: #!/usr/bin/rebol --cgi REBOL [ Title: "show" File: %show.r ] print "Content-type: text/html^/" print {Back } print ["Script path :" system/script/path " ] print CGI Object :" print " foreach name next first system/options/cgi [ either :name = 'other-headers [ print [ name : ] foreach [n v] list: system/options/cgi/:name [ print [ n : " mold select list n ""] ] print " ][ print [ name : " mold system/options/cgi/:name ""] ] ] print " if system/options/cgi/request-method = POST" [ vars: make object! decode-cgi make string! input if not empty? next first vars [ print " Variables passed : foreach name next first vars [ print [ name : " mold vars/:name ""] ] print " ] ] print | |
For Text RSP script I get: Back Timestamp: Request parameters : HTTP Method: HTTP Port: Client IP address: Request headers : Request variables : Session : SID: No session | |
Dockimbel 12-Oct-2006 [157] | Looks like the configuration parameters are not loaded...Did you modified your httpd.cfg ? |
Louis 12-Oct-2006 [158x3] | No. |
However, since it wasn't working, I did set the includes to the SDK sources on my harddrive, and then reencapped. | |
For the tests, I get the same results whither Cheyenne is running or not. | |
Dockimbel 12-Oct-2006 [161x4] | Did you tried without encapping, just using the sourced version ? |
The encapping procedure is special for Cheyenne, it needs to be run in normal mode first before encapping to preprocess the source and generate the .cache.efs file. | |
Btw you shouldn't get any result if Cheyenne is not running ! | |
Are you testing using the http://localhosturl ? | |
Louis 12-Oct-2006 [165] | OK, http://localhostworks. I have a lot to learn, as you can see. Thanks for helping me through this. I was just clicking on the index.html file in the www folder. |
BrianH 12-Oct-2006 [166x2] | Can you make the session storage server a RebService, called from the various processes that need to read/write the data? That overhead might be less than the SQL overhead. |
I haven't had a chance to review the Cheyenne source yet. Are the subprocesses called by a central broker? Perhaps that broker can manage the session data. That way any in-process accesses could be almost as fast as straight block access, with only API overhead. | |
Will 12-Oct-2006 [168] | Brian, that is exaclty how sessions are handled right now. Sessions are managed by central broker uniserve with service httpd.r and data exchanged with task-handlers subprocesses executing rsp |
BrianH 12-Oct-2006 [169] | Well, if you package the session data in a manager API, you can export that API as a REBOL Service that subprocess can use as well. |
Will 12-Oct-2006 [170] | are rebol services stable and fast? |
BrianH 12-Oct-2006 [171x2] | Not sure. I remember that there was a version built on UniServe, same as Cheyenne, so we could use that. |
Or was it built on BEER? | |
Dockimbel 12-Oct-2006 [173] | It's BEER I guess, not UniServe/ |
Louis 12-Oct-2006 [174x3] | Does the REBOL/Plugin work with Cheyenne? |
Doc, please see my posts in the Plugin-2 group. | |
Also, would be nice to have a link on your Cheyenne page to your Cheyenne blog. | |
Dockimbel 13-Oct-2006 [177x2] | REBOL/Plugin: yes, as any other HTTP client. |
Blog: I'll add it this WE, I'm still doing adding some features to the blog, I'd like to test it a few days more with a low traffic. | |
BrianH 13-Oct-2006 [179] | I'd love if there were an LNS implementation built on UniServe. This would let you turn Cheyenne into a general purpose app server. |
Pekr 13-Oct-2006 [180] | general? Rebol general,no? maybe XML-RPC would be interesting for non-rebol world, but it could be added too .... |
BrianH 13-Oct-2006 [181x2] | I've been thinking of LNS syntax shims that would allow REBOL services to be called by non-REBOL clients. |
Does Cheyenne have an option to limit which network adapters it will serve to? For example, I have 5 adapters on this computer (ethernet, wireless, 2 VMware, Hamachi), maybe 6 counting localhost, and I would like the web server to only be visible to the virtual adapters, not even opening a port on the physical ones. I remember this being difficult in REBOL, that REBOL would always open server ports on all available adapters, so you would have to inspect the incoming connections and filter. Have you come up with a better workaround for this, or a way to do it properly? | |
Pekr 13-Oct-2006 [183] | IIRC via set-modes/get-modes, you can know what adapter is involved. I am afraid there is no other way how to prevent this. Opening a socket is OS thing imo, and I wonder if C socket functions allow you to choose your device? |
BrianH 13-Oct-2006 [184] | They do, AFAIK. I do have the standard Windows firewall installed, but it would be better (lower overhead) to just not open the port on the wrong adapters in the first place. |
Dockimbel 13-Oct-2006 [185] | It can be done at the C socket level, unfortunately, I don't know any way of doing that from REBOL. I guess that's not supported in the current REBOL port!. |
Graham 13-Oct-2006 [186x2] | Can Cheynne support Ajax ? |
Does each http request spawn a new instance ? | |
Dockimbel 13-Oct-2006 [188x2] | Ajax is sending standard HTTP requests, so yes. |
you mean a new REBOL process ? | |
Graham 13-Oct-2006 [190x3] | yes. |
or uniserve task | |
Can RSP pages retreive content using async http and return them to the client? | |
Dockimbel 13-Oct-2006 [193x2] | HTTP requests for static ressource are handled in multiplexing mode by the main Cheyenne process. Only CGI or RSP can currently spawn a new process if there's no free process available to handle the job. |
Async in RSP: there's nothing preventing that from being used. | |
Graham 13-Oct-2006 [195x2] | Good to confirm this |
I haven't downloaded your latest versions yet .. is a console visible ? | |
Dockimbel 13-Oct-2006 [197] | Only for the main process, console are hidden for bagckground processes. |
Graham 13-Oct-2006 [198] | Can that be hidden as well to use Cheyenne as an embedded web server? |
older newer | first last |