[Gambas-user] gambas web how to deploy (under construction) but minimal info ready

Tobias Boege taboege at ...626...
Sun Apr 2 00:22:58 CEST 2017

On Sat, 01 Apr 2017, PICCORO McKAY Lenz wrote:
> continued with the how to and ported to gambas wiki now:
> http://gambaswiki.org/wiki/howto/getstartedwebgambas
> with the basic to deploay the app cgi inside the webserver as per user or
> globally, also minimal knowledge and requirements
> the article was updates too:
> http://qgqlochekone.blogspot.com/2017/03/gambas-como-
> publicar-web-how-to-deploy.html

To be frank, I don't know what to think of this entry in the wiki. Please
believe me that new content is always great to have and your effort is
appreciated, so that I can focus on the things I dislike in this mail with
a clean conscience.

Naturally, the first point is the spelling. If it wasn't for the spelling
I wouldn't have bothered to write a mail, but since it has surpassed my
inhibition threshold, let me also comment on the contents further below.

I strongly suggest you find yourself a volunteer to go over the article
and produce an actual English text. There are literally as many errors as
there are lines in the document, maybe more. Of course, I'm not the wiki
police and I won't dare to delete your article, but, honestly, I want to.
The whole presentation is a little embarrassing, to the point where I have
trouble saying "it's better than nothing", averaged over all aspects of
the document (+ the information, - the presentation).

There are also questionable lines like

> due unfortunatelly ide when runs make a own embebed web erver

Why is that unfortunate? Is gb.httpd a bother and should be removed? This
sounds either like your opinion or a filler word, and IMHO it should be
left out in both cases. The part before this reads

> also note that test the webpage inside the ide its not same as called from url browser,

As a matter of fact, you use the same web (url?) browser to access and
view the output of your project, regardless of whether you run it from the
IDE or from a proper web server. You seem to be targeting gb.httpd but how
is it not the same? I mean, yes, I think I've seen some differences in the
setting of CGI variables across default configurations of web servers, but
the reader of your article would probably like an example of what you're
getting at here, because the web browser handles both types of web servers
the same.

Then I don't get why you discriminate between Gambas scripts and compiled
Gambas projects. Sure: one is compiled and the other isn't, but both are
CGI scripts with a shebang, so what's the point? As CGI scripts they are
not more different than they are as Gambas executables.

There are other things I personally disagree with, like the scope of your

> second Need understand REALLY the concepts of request Request and response Response

Why is this an "Installation requirement"?

> As general furter info high end production environments must configure as a duple
> of a server frontend that provides a proxy reverse to the real cgi webserver with
> the gambas3 cgi program.

> the server GCI standars values, those are very important to understant for high level
> production webpages.

You originally wanted to write a HowTo for using Gambas CGI on a real web
server, not about high-level production development.

If I were to start writing such an article, I would make a clear cut between

  (1) Installing Gambas
      Might as well include a small section about this. I installed Gambas
      from sources on my CentOS server. Since that naturally goes without
      GUI, produces lots of missing component warnings and all that, it
      might be the newbie-friendly way to talk about these things. IIRC I
      even needed to patch the gb.db.mysql/configure.ac because /usr/lib
      isn't symlinked to /usr/lib64 on my system, so the configure script
      failed to find some libraries. Chances are people want to use a
      fairly recent Gambas version, too, to get new features and fixes in
      the gb.web.form component, so I think installing Gambas is a relevant
      topic here.

  (2) Essentials of Gambas CGI programming
      The relevant components are gb.web and gb.web.form. Choosing a
      "web application" in the IDE project creation dialog will only turn
      on gb.web (and gb.util.web). I would write a small application that
      uses some gb.web classes: parses Request.Path (preferably without
      producing a directory traversal vulnerability) and uses the Response
      and Session classes in a non-trivial way -- all this without going
      into much detail on the HTTP protocol, CGI variables, database
      connectivity and what else a serious application may require. This is
      all stuff the user will learn on the side and has no reason to be in
      the Gambas wiki. I would probably not more than mention Gambas
      WebPages because I never used them. At the end of this section, the
      reader would have seen the sources of a Gambas CGI application and
      knows he can use gb.httpd to debug his own code.

  (3) Installing and configuring the web server
      Your instructions could have been much clearer. For starters, I would
      replace the table with subsections in the document, dealing with apache
      and lighttpd separately, linking to relevant documentation, give the
      reader an idea where the configuration files could be located on their
      distro, etc.. This might easily be the most important part of the
      article for most people which are already familiar with Gambas. Don't
      just squeeze all the stuff into a table without any discussion at all.

Again, I'm sorry if some parts come off as too direct. It's already past bed
time here.


"There's an old saying: Don't change anything... ever!" -- Mr. Monk

More information about the User mailing list