Re: Apache config

[email protected] Sun, 23 Oct 2022 22:56:34 -0400
Newsgroups gmane.comp.systems.as400.web
Message-ID <[email protected]>
Here is the link that you sent.
https://fieldexit.com/forum/display?threadid=522  I do see that it is 4
years old so it is probably obsolete. :)

So the library list is in a file stored on the IBM i, correct?  How does
your process know which file to read to get the library list if there are
multiple environments (different libls)?  It seems like I will need to add
another field in my json to tell it that.  It also seems like all of the
push and pop would create a chunk of overhead.  When I get the real app
working (I'm still playing with concept at this point so I only have a
couple), there are actually about 25+ libraries in the library list.  That
means 50+ push/pop for every call.  Or am I still missing something with
what you are doing?

Does your process do an HTTP POST or am I trying to make my process work
like yours and they are apples and oranges.

And my apologies if I sounded short with any of my comments / questions.  I
feel like I am trying to tread water wearing a concrete overcoat and it is
getting frustrating.

-----Original Message-----
From: WEB400 <[email protected]> On Behalf Of Brad Stone
Sent: Sunday, October 23, 2022 8:58 PM
To: Web Enabling the IBM i (AS/400 and iSeries) <[email protected]>
Subject: Re: [WEB400] Apache config

What link did I send you?  I recall sending someone a generic Apache config
posted at Fieldexit.com... or maybe an IBM link that may have had it.

Here's how I do it.

pushLib('datalib');
//do eRPG stuff
popLib('datalib');

I wrote pushLib and popLib years ago.  Inside of it there also are functions
that can set a library list using a job description (I don't think attaching
a job description to QTMHHTTP or QTMHHTP1 will change their functioning
library list... and it's also not easily changed each program run).

Control files are pretty simple...

sequence
library

Read through it by sequence and for each library pushLib()... then at the
end popLib().  You can even make a nice ILE function to do this.

I was sharing how I have done things for over 25 years with great success.
Sorry if it confused you.

On Sun, Oct 23, 2022 at 7:27 PM <[email protected]> wrote:

> I am so totally confused by what I am being told.
>
> I am trying to run an Angular / javascript app in the browser that 
> does an HTTP / Apache connection to get the data.  The program that it 
> is running
> (HTTPDATA) is a generic "SQL server" program that can take any SQL 
> request and process it.  As for the Angular / javascript part, it is 
> unable to touch anything on the PC.
>
> Now to this response.
>
> You said that you never used those environment variables to set the 
> libl yet that is what was in the link that you sent me for how to 
> configure apache.
> I assumed that was what I needed to use.
>
> So to do it differently, you suggest a control file with a jobd or 
> library list.  Where is this control file stored?  I'm guessing that 
> it has to be on the IBM i somewhere because again, I can't access the 
> PC with my app.
>
> For the jobd part of your response, I am not starting a job (maybe it 
> is auto started behind the scenes when I connect) so how do I specify 
> a jobd for a job that I am not submitting?
>
> I am really struggling to find good documentation and I know part of 
> that is because I don't fully understand what I am trying to do and 
> much of what I read does not make sense.  When Brad provided the link 
> for the apache configuration script file, I spent a ton of time trying 
> to figure out where it was so I could edit it.  I finally noticed that 
> I can edit the config in the HTTPAdmin page.  I still have not clue 
> where it put the thing.
>
> Is there somewhere that I can get "step by step instructions for dummies"
> on
> the best way to do this stuff?
>
> -----Original Message-----
> From: WEB400 <[email protected]> On Behalf Of Brad 
> Stone
> Sent: Sunday, October 23, 2022 3:56 PM
> To: Web Enabling the IBM i (AS/400 and iSeries) 
> <[email protected]
> >
> Subject: Re: [WEB400] Apache config
>
> I never used those environment variables to set the libl.  I use my 
> push and pop libl functions.  Much more convenient and no stopping and 
> starting the instance if it changes.
>
> A simple control file to point to a job description (heaven forbid 
> those are
> used!) or just a simple library list file.  Easily updatable for the 
> next time the program runs.
>
> On Sun, Oct 23, 2022 at 11:56 AM Vern Hamberg via WEB400 < 
> [email protected]> wrote:
>
> > Shouldn't the OP be fine using those settings but specify the same 
> > program in each? It seems he has only to retrieve the value of the 
> > QIBM_CGI_LIBRARY_LIST environment variable and set the LIBL from it?
> > The docs say "The internal environment variables set by this 
> > directive are set after most early request processing directives are 
> > run", so it probably depends on timing.
> >
> > I speak from long-time-ago working with this stuff, so please 
> > forgive if I'm as clueless as ever!
> >
> > Regards
> > Vern
> >
> > On 10/23/2022 9:09 AM, Brad Stone wrote:
> > > Yes, but you'd need to control the library list in your program
itself.
> > >
> > > What I do is set an environment variable to prod or test, retrieve 
> > > it,
> > and
> > > set the library list dependent on that at the beginning of the
program.
> > I
> > > have some push and pop lib functions I use for that.
> > >
> > > But in your case I don't see an issue.. I would personally prefer 
> > > 2
> > apache
> > > instances, one for prod and one for test/dev as well as separate 
> > > libraries.  Then I would run the test one on a different port 
> > > (like
> > > 8080
> > or
> > > 8443).
> > >
> > > On Sun, Oct 23, 2022 at 7:46 AM<[email protected]>  wrote:
> > >
> > >> I have the following in my apache config file.
> > >>
> > >>
> > >>
> > >> ScriptAlias /httpprod /qsys.lib/httpprod.lib/httpdata.pgm
> > >>
> > >> <Directory /qsys.lib/httpprod.lib>
> > >>
> > >>    SetEnv QIBM_CGI_LIBRARY_LIST "QTEMP;QGPL;YAJL;httpproda;httpprodb"
> > >>
> > >>    allow from all
> > >>
> > >>    order allow,deny
> > >>
> > >>    Options +ExecCGI +Includes
> > >>
> > >>    SetOutputFilter Includes
> > >>
> > >> </Directory>
> > >>
> > >>
> > >>
> > >> ScriptAlias /httptest /qsys.lib/httptest.lib/httpdata.pgm
> > >>
> > >> <Directory /qsys.lib/httptest.lib>
> > >>
> > >>    SetEnv QIBM_CGI_LIBRARY_LIST "QTEMP;QGPL;YAJL;httptesta;httptestb"
> > >>
> > >>    allow from all
> > >>
> > >>    order allow,deny
> > >>
> > >>    Options +ExecCGI +Includes
> > >>
> > >>    SetOutputFilter Includes
> > >>
> > >> </Directory>
> > >>
> > >>
> > >>
> > >> I am using the alias to control the library list between my prod 
> > >> and
> > test
> > >> data.  With this config, I have to have two copies of 
> > >> httpdata.pgm, one
> > in
> > >> each library.  Is there a way to configure this so both aliases 
> > >> call the same program such as /qsys.lib/httpcommon.lib/httpdata.pgm?
> > >>
> > >>
> > >>
> > >> --
> > >> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) 
> > >> mailing list To post a message email:[email protected] To 
> > >> subscribe, unsubscribe, or change list options,
> > >> visit:https://lists.midrange.com/mailman/listinfo/web400
> > >> or email:[email protected]
> > >> Before posting, please take a moment to review the archives 
> > >> athttps://archive.midrange.com/web400.
> > >>
> > >>
> > --
> > This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) 
> > mailing list To post a message email: [email protected] To 
> > subscribe, unsubscribe, or change list options,
> > visit: https://lists.midrange.com/mailman/listinfo/web400
> > or email: [email protected] Before posting, please 
> > take a moment to review the archives at 
> > https://archive.midrange.com/web400.
> >
> >
> --
> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) 
> mailing list To post a message email: [email protected] To 
> subscribe, unsubscribe, or change list options,
> visit: https://lists.midrange.com/mailman/listinfo/web400
> or email: [email protected] Before posting, please 
> take a moment to review the archives at
https://archive.midrange.com/web400.
>
>
> --
> This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) 
> mailing list To post a message email: [email protected] To 
> subscribe, unsubscribe, or change list options,
> visit: https://lists.midrange.com/mailman/listinfo/web400
> or email: [email protected] Before posting, please 
> take a moment to review the archives at 
> https://archive.midrange.com/web400.
>
>
--
This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) mailing
list To post a message email: [email protected] To subscribe,
unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/web400
or email: [email protected] Before posting, please take a
moment to review the archives at https://archive.midrange.com/web400.


-- 
This is the Web Enabling the IBM i (AS/400 and iSeries) (WEB400) mailing list
To post a message email: [email protected]
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/web400
or email: [email protected]
Before posting, please take a moment to review the archives
at https://archive.midrange.com/web400.