Andre,

I really, really appreciate your response.

It's going to take me a little time to get up to speed on the information.

How is  libWebServices going to work with the Secure Socket Layer
which I hear will be included with Revolution 2.5?

Have you done any load testing (several users at once) accessing
websites written with libWebServices?

It sounds like an excellent solution, but I'm a little nervous with it
being so new - probably because I don't fully understand it yet.

How do I contact you off list?

Thanks again!

Rick


On Jul 31, 2004, at 7:50 PM, Andre Garzia wrote:

Rick,

Hi let's make a little road map for you! Your options for Rev-based CGI are three. I'll discuss each one of them.

Option A - "GRRRR, Real Programmers don't use libraries!" (aka: Do It Yourself From The Scratch!)

To do that in a sane way is good to use Apache as your webserver and you can use MySQL as your RDBMS of choice. You should check the CGI tutorial for info on that (I saw you checked.), you said about perms been unclear on MacOS X for you. Permissions are unix based, so it's the same thing in MacOS X, is like that, you have three categories: "owner of the file", "users in the same group", "the rest of the world", you set permissions for each of this categories in a file telling the OS how to behave. The usefull part is that your CGI files must have permission to be executed and to create files and folders, so you set the CGI file to 755 (that's the code for that) and the folder it will be writing files to 777. All the information from apache will be inside enviroment vars like $QUERY_STRING (or something like that) It's just that. This is the hardest way, and there's no much to tell about it, I do not recommend it.


Option B - "Use the Library Luke!" (aka LibCGI)

Monte and Rodney put togheter a nice library called LibCGI (http://rodney.weblogs.com/libcgi). It can help yourlife, really. This lib will take care of everything, it has primitives for acquiring data from web space and sending data back to the web, you fetch data from a simple array gRequestDataA, I think... and use LibCGI_response() to send data, very simple! The examples are good and there's some simple info at the page. What users usually complain is about the procedures for installing the library on an apache system. That part I solved for you. I made a simple palette called CGI-Tool (fetch from http://public.soapdog.org) that is able to install and setup LibCGI and the Metacard/Revolution engine on a remote FTP server. It also can server as a "distribution builder" for your cgi, like from inside Rev IDE click a button and your stack is there on the server ready for use. If you are doing commercial work, I advise to stay with LibCGI for apache is very rock solid, the Rev engine is a little memory hungry but nothing harmfull.


Option C - "But Mom, I'd like to stay in rev space, I am afraid to use outside tools..." (aka revHTTPd, or ServerWorkz but the final name is now libWebServices)


I created a server and you saw the old documentation. Man you should really see what I am up too... everything changed, it's now on steroids. Since I can now do more protocols than simple HTTP, I decided to rename the whole collection of things libWebServices. LibWebServices is a little button. It fits inside the backscripts and gives this features for your app: HTTP and XML-RPC. Any handler can be accessed as if they were an URL (for example http://my.home.machine/myStack/myCard/myButton/mouseUp) also we can match web forms to cards with text fields this makes easy to make CGIs and we have tons of features for remote method invocation and data transports but Apache still THE SERVER! my server should not be used for commercial purposes yet, I am finishing a complete rewrite and I will open the source to investigation so that people can look for bugs, there are better programmers here, I hope they take a look. The two biggest advantadges are: it's self contained, your app is your server and CGI, you can have as many CGIs running as you want in a single app, you can copy it to a CD and run it on another computer... try that with apache. Second the server and cgi engine are always on so we got persistence of state, when you use apache every time a CGI launches, it launches rev engine, run the thing, stop the engine, so it's like that movie memento, your cgi never remember where it is, it must re-read it's state from files/cookies/whatever and also launching takes some time. The libWebServer is always on so if you set a variable to something (supposing it's not a local var or a var of the ephemeral kind) it stays that way, you can set a global to something and fetch it anywhere anytime, thats good and evil for you must remember to zero your vars when needed. I can give any info on this project, just ask, I'll try to leave the new experimental server running tonight and will announce here.



I am making heavy use of cgi, apache, mysql, custom servers and everything... it works, but sometimes it's just better to use LAMP (linux, Apache, MySQL and PHP) on the server side and create the client with Rev...

Tell us about your project (if it's not secret) we can argue among ourselves in the list eachone trying to convince you that our side is right !!!! :D

Cheers
andre

On Jul 31, 2004, at 3:35 PM, Rick Harrison wrote:

Hi there,

I've been looking at all the information I can find thus far
about how to use Rev as a CGI web solution.  I'm finding
bits and pieces of stuff but nothing which really puts it
all together in a simple step by step process.
(I'm assuming that one doesn't exist at this point or I would
have found it.)

The idea is of course to use MySQL and Rev. as the CGI
along with Apache or some other webserver capable of
doing SSL transactions.  In other words, a rather serious
project.

I've looked at Andre Garzia's httpd stack server.  I found
the concept very interesting.  I'm not able to follow his
documentation real well without illustrations etc. I was
very impressed!  I doubt that it will do SSL however.

I looked at the REV CGI introduction, it is a little unclear
on the permissions thing for setting it up on OS X. It obviously
uses the command line terminal unix stuff to create the right
hooks etc.  This appears to work through Apache so that will
solve the SSL problem.  I obviously need some better more
in depth resource to explore this further.

I'm just now getting into the XML tutorial stack which at first
glance looks very good.

Has anyone out there done an extensive website using Rev
and MySQL with Apache?

Any other resources/examples you can recommend?

Thanks in advance,

Rick Harrison

_______________________________________________
use-revolution mailing list
[EMAIL PROTECTED]
http://lists.runrev.com/mailman/listinfo/use-revolution


--
Andre Alves Garzia  2004
Soap Dog Studios - BRAZIL
http://studio.soapdog.org

_______________________________________________
use-revolution mailing list
[EMAIL PROTECTED]
http://lists.runrev.com/mailman/listinfo/use-revolution


_______________________________________________ use-revolution mailing list [EMAIL PROTECTED] http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to