r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[!Cheyenne] Discussions about the Cheyenne Web Server

sqlab
15-Jan-2012
[11138x2]
plink is a ssh command line tool  of the putty package
maybe win-call uses a different home directory for the key file
Endo
25-Jan-2012
[11140x2]
I have a problem with cheyenne-r0920-cmd.exe on Windows, when I comment 
database section in my http.cfg it works, when I uncomment it gives 
the following error in chey-pid-9036.log file:


25/1-17:58:14.625-## Error in [uniserve] : On-received call failed 
with error: make object! [
    code: 515
    type: 'access
    id: 'invalid-path
    arg1: "/E/cheyenne/www/centrex//index.rsp"
    arg2: none
    arg3: none
    near: [info? new [
            req/in/target: form file 
            if ext: find/last req/in/target dot [
                req/in/ext: to word! ext 
                req/handler: select service/handlers req/in/ext
            ] 
            if not req/in/file [req/in/file: new] 
            if d?: declined? req [return false]
        ]]
    where: 'throw-on-error
] !


note that there is double slash before index.rsp I don't know why. 
Error happens before I use any do-sql or something. Web page doesn't 
work at all.
Oh when I moved database section from WebApp to globals section then 
it works!
Dockimbel
25-Jan-2012
[11142]
Can you reproduce the same issue with latest revision from sources?
Endo
25-Jan-2012
[11143]
I will test tomorrow morning.
Endo
26-Jan-2012
[11144x2]
Doc: Same error with latest r173 version.

I just put the databases block into webap block, didn't change anything 
in the testapp,

	webapp [
		databases [
			cdr	odbc://sa:[qwe123-:-cdr]
		]
		virtual-root "/testapp"
		root-dir %www/testapp/
		auth "/testapp/login.rsp"
		;debug
	]
error is:
    code: 515
    type: 'access
    id: 'invalid-path
    arg1: {/E/cheyenne-sources/Cheyenne/www/testapp//index.rsp}

Note that the double slash in arg1.
Chrome shows "No data received"

Error 324 (net::ERR_EMPTY_RESPONSE): The server closed the connection 
without sending any data.
Dockimbel
26-Jan-2012
[11146]
Thank you for the test, I'll will try to reproduce it here.
Endo
26-Jan-2012
[11147x2]
Doc: I found where the bug is:
It is in mod-fastcgi.r file line 65:
new: rejoin [cfg/root-dir req/in/path file]

cfg/root-dir: %www/testapp/
req/in/path: "/"
file: %index.rsp
new: %www/testapp//index.rsp
But it is not the only problem because if I replace // with / in 
"new" then it doesn't produce error but gives 404.

rejoin [cfg/root-dir req/in/path file] exists in mod-static.r file 
but it works well. So there should be something wrong in req/in/path 
IF there is databases section in webapp. I don't know how related 
they are.
Dockimbel
26-Jan-2012
[11149]
Thanks for digging this up, I'll have a quick look on it later today.
amacleod
7-Feb-2012
[11150]
I'm trying to send an email within an .rsp script. Is this not possible 
because I keep getting errors: 


** User Error : Server error: tcp 503 AUTH command used when not 
advertised 
** Where: none 
** Near:  [smtp-port: open [scheme: 'esmtp]
Dockimbel
7-Feb-2012
[11151]
Looks like a ESMTP scheme issue. Is it working from console (using 
same REBOL version)?
amacleod
7-Feb-2012
[11152]
Code works on same machine in rebol console but I'm using exe version 
of cheyenne. Does that make a diff?
GrahamC
7-Feb-2012
[11153]
Alan, you do know Cheyenne has a built in mail server ?
amacleod
7-Feb-2012
[11154x2]
No
How's it configed? I don't see it in the docs
GrahamC
7-Feb-2012
[11156x3]
You can use that to send email instead of using 'send
Check the mail demo that is included in the distribution
ie. www/email.rsp
amacleod
7-Feb-2012
[11159]
will do...thanks again
Dockimbel
7-Feb-2012
[11160]
What exe version of Cheyenne are you using?
amacleod
8-Feb-2012
[11161x2]
I was using an older version (not sure which) so I upgraded to newest 
version and email works! but now I have some .rsp scripts failing 
: #[object! [ code: 311 type: script id: invalid-path arg1: MTA arg2: 
#[none] arg3: #[none] near: [port-id: any [ all [ value? 'servers-port 
block? servers-port servers-port/MTA ] 9803 ]] where: context ]]
I'm using the same httpd.cfg . Any configs that are diff that may 
need to be changed?
GrahamC
8-Feb-2012
[11163]
only path in that error is servers-port/MTA .. have you probed this?
amacleod
8-Feb-2012
[11164x3]
Got it mostly working. Most scripts seem to be ok but one script 
keeps giving following error:
#[object! [ code: 303 type: script id: expect-arg arg1: copy arg2: 
range arg3: [#[datatype! number!] #[datatype! series!] #[datatype! 
port!] #[datatype! pair!]] near: [cmd: copy/part skip header 2] where: 
on-task-received ]]
The above error is on a .cgi script. cgi is on by default right?
Kaj
8-Feb-2012
[11167]
The module needs to be enabled in the config file
amacleod
8-Feb-2012
[11168x3]
fastcgi is uncommented in module list in config file
I converted the script to .rsp and it still gives an error. Must 
be something in the script but the same script runs on previous version 
of cheyenne and the new version does run other .rsp scripts.
Got .rsp working fully but .cgi still bombing...good enough for me 
for now.
ddharing
9-Feb-2012
[11171]
I found out recently that Cheyenne has trouble with the PHP-based 
DokuWiki. Using FastCGI, it will work until you open the Media Manager 
and then Cheyenne will "hang". You have to restart Cheyenne. I haven't 
had time to troubleshoot yet.
Oldes
9-Feb-2012
[11172]
I use Cheyenne to keep myself from PHP:)
Endo
9-Feb-2012
[11173]
Same for me :) keep away from PHP, IIS, Apache, CGI.
RSP is the best ;)
ddharing
9-Feb-2012
[11174]
I agree, but DokuWiki is written in PHP. I was just trying to avoid 
Apache.
Endo
9-Feb-2012
[11175]
what do you see in Cheyenne's trace.log or crash.log file?
Kaj
9-Feb-2012
[11176]
Is it still necessary to patch PHP for Cheyenne?
Endo
10-Feb-2012
[11177x8]
I have a problem running cheyenne-0920-cmd.exe as a service on Windows 
Server 2003 (32Bit)
Same version runs on XP/Pro (SP3). 
Crash.log:
10-Feb-2012/12:07:10+2:00 : make object! [
    code: 500
    type: 'access
    id: 'cannot-open
    arg1: "/C/cheyenne_tt/service.dll as library"
    arg2: none
    arg3: none
    near: [do make routine! [] load/library]
    where: 'launch-service
]
My Win2003 issue is still not solved, but I have one additional question,

RSPs can read/write anywhere in the server, even they are in a webapp. 
Is it not a security hole? If someone able to upload an rsp file 
and execute it, he can delete a vital file from the system, or read 
whole directory structure.
Is there a way to run Cheyenne (or a webapp) in a sandbox?
Oh ok, I can run Cheyenne in other than LocalSystem account such 
as Guest or another limited user account so it cannot read/write 
other directories.

It's better to create a user for Cheyenne to be able to control fully.
I have another issue, Cheyenne hangs if do-sql/flat used and the 
result is empty. if no /flat it works, returns empty block.
result: do-sql/flat 'test "select top 0 * from mytable"
Even if I stop the service (or Quit from tray menu, if runs as app) 
one of the Cheyenne processes stays in the background.
Problem occurs in latest SVN version as well.
It hangs on line 487 on file handlers\RSP.r

until [if data: pick port 1 [append out data] data]

I think pick port 1 waits forever.
I've fixed the problem. PICK port 1 returns NONE if the result is 
empty, so UNTIL never finishes.
DOC: I've fixed the do-sql/flat bug if the result is empty.
In RSP.r file on line 487:
    until [if data: pick port 1 [append out data] data]
should be
    while [data: pick port 1] [append out data]
Maxim
10-Feb-2012
[11185]
this should also work  (and should theoretically be faster:

 until [not if data: pick port 1 [append out data]]
Gregg
10-Feb-2012
[11186]
WHILE reads much better there though.
Endo
10-Feb-2012
[11187]
They give very close result, WHILE looks a bit faster.

;b is a block of some numbers, benchmark func loop 1'000'000 times.

>> benchmark [i: 1 until [not if x: pick b i [++ i x]]]
== 0:00:38.953

>> benchmark [i: 1 while [x: pick b i] [++ i]]
== 0:00:35.688

On my EeePC 1.6 Ghz N270, XP/Home.