/home/nikos/wsgi/ i places my apps and static remains at public_html
Configuration now is:
DocumentRoot /home/nikos/public_html
<Directory /home/nikos/public_html>
Require all granted
</Directory>
<Directory /home/nikos/wsgi>
Require all granted
</Directory>
WSGIDaemonProcess app user=nikos group=nikos home=/home/nikos/public_html
WSGIScriptAliasMatch ^/(?!phpmyadmin)
/home/nikos/public_html/wsgi/app.py process-group=app
application-group=%{GLOBAL}
WSGIDaemonProcess clientele user=nikos group=nikos home=/home/nikos/public_html
WSGIScriptAlias /clientele /home/nikos/public_html/wsgi/clientele.py
process-group=clientele application-group=%{GLOBAL}
WSGIDaemonProcess downloads user=nikos group=nikos home=/home/nikos/public_html
WSGIScriptAlias /downloads /home/nikos/public_html/wsgi/downloads.py
process-group=downloads application-group=%{GLOBAL}
=========================
I haven't understood your last mail.
@app.route( '/' )
@app.route( '/<page>' )
def index( page=None ):
# read environment
pdata = ''
page = request.args.get('page', 'index.html')
'page' variable is supposed to hold the URL parameter givn in browser
as 'http://superhost.gr/something <http://superhost.gr/somehting>'
no?!
It should instead be page = request.args.get(page, 'index.html') you mean?!
But why?!
Στις Δευ, 10 Σεπ 2018 στις 2:59 μ.μ., ο/η Graham Dumpleton <
[email protected]> έγραψε:
> Okay, no I clicked as to what you are trying to do.
>
> If you want the path segment, don't use:
>
> page = request.args.get('page', 'index.html')
>
> Just use the argument given to the function.
>
> When you use request.args you are looking at query string parameters.
>
> http://superhost.gr?page=xxx.html
>
> They are different things.
>
> On 10 Sep 2018, at 9:56 pm, Νικόλαος Κούρας <[email protected]> wrote:
>
> [root@superhost public_html]# curl http://superhost.gr
> index.html
>
> [root@superhost public_html]# curl http://superhost.gr/clientele
> index.html <http://superhost.gr/clienteleindex.html>
>
> As it shows even with an argument passed to the domain '/' page =
> request.args.get('page', 'index.html') returns the latter
>
>
> Also:
>
> application = Flask(__name__)
> app = application
> app.debug = True
>
>
> Wont display error in browser but still in the error_log text file
>
>
> Στις Δευ, 10 Σεπ 2018 στις 2:47 μ.μ., ο/η Graham Dumpleton <
> [email protected]> έγραψε:
>
>> It should not be anywhere under /home/nikos/public_html, not even a sub
>> directory.
>>
>> So use a parallel directory such as:
>>
>> /home/nikos/wsgi_apps
>>
>> When testing use:
>>
>> curl http://superhost.gr/
>>
>> Don't trust your browser, as it may have cached that accessing
>> http://superhost.gr/ should redirect to http://superhost.gr/index.html
>>
>> If curl works, you will need to clear your browser cache history for
>> http://superhost.gr/
>>
>> On 10 Sep 2018, at 9:34 pm, Νικόλαος Κούρας <[email protected]> wrote:
>>
>> Like this you mean? ialso moved static/ files inside the new wsgi/ directory
>> because even with the directive in the alias home=/home/nikos/public_html
>> templates could not be found
>>
>> ====================================
>>
>> DocumentRoot /home/nikos/public_html
>>
>> <Directory /home/nikos/public_html>
>> Require all granted
>> </Directory>
>>
>> <Directory /home/nikos/public_html/wsgi>
>> Require all granted
>> </Directory>
>>
>>
>> WSGIDaemonProcess app user=nikos group=nikos
>> WSGIScriptAliasMatch ^/(?!phpmyadmin) /home/nikos/public_html/wsgi/app.py
>> process-group=app application-group=%{GLOBAL}
>>
>> WSGIDaemonProcess clientele user=nikos group=nikos
>> WSGIScriptAlias /clientele /home/nikos/public_html/wsgi/clientele.py
>> process-group=clientele application-group=%{GLOBAL}
>>
>> WSGIDaemonProcess downloads user=nikos group=nikos
>> WSGIScriptAlias /downloads /home/nikos/public_html/wsgi/downloads.py
>> process-group=downloads application-group=%{GLOBAL}
>>
>> ====================================
>>
>>
>> Still the ERROR remains the same after moving to wsgi/
>>
>>
>> Στις Δευ, 10 Σεπ 2018 στις 1:47 μ.μ., ο/η Graham Dumpleton <
>> [email protected]> έγραψε:
>>
>>>
>>>
>>> On 10 Sep 2018, at 8:34 pm, Νικόλαος Κούρας <[email protected]> wrote:
>>>
>>> 1) How do i enable flask so that errors are shown in the browser for m,
>>> so i dont have to tail -f error_log all the time?
>>>
>>> When i was using the flask development server i had this
>>>
>>> app.run( host='superhost.gr', port=5000, debug=True )
>>>
>>> Now i have commented this out becuas eitsw being run by mod_wsgi and its
>>> sending everythign to the error_log text file.
>>>
>>>
>>> You use:
>>>
>>> app.debug = True
>>>
>>> See:
>>>
>>>
>>> http://flask.pocoo.org/docs/1.0/api/?highlight=flask%20debug#flask.Flask.debug
>>>
>>> 2) Regarding this code which not behalfing as it should
>>>
>>> @app.route( '/<page>' )
>>> @app.route( '/' )
>>> def index( page=None ):
>>>
>>> # read environment
>>> page = request.args.get('page', 'index.html')
>>>
>>> When i try via browser:
>>>
>>> 'http://superhost.gr/' page variable equals to 'index.html'
>>> 'http://superhost.gr/something' page variable still equals to
>>> 'index.html'
>>>
>>> How is this possbile under mod_wsgi ?
>>>
>>>
>>> You shouldn't get index.html in either case if doing things correctly.
>>>
>>> The issue may because if I recollect correctly, you had all your .py
>>> files for the WSGI application under your DocumentRoot directory. You
>>> should not do that as it can be insecure and wrong configuration elsewhere
>>> can lead to someone being able to download your source code. Having things
>>> in their could also cause issues with Apache trying to remap URLs to index
>>> files.
>>>
>>> Create a directory separate to your DocumentRoot directory and move the
>>> .py files into it. Then change the WSGIScriptAlias directives to reference
>>> the new location. You will also need to create a new Directory block for
>>> the new directory and grant access to being able to serve files from that
>>> directory.
>>>
>>>
>>>
>>> Στις Δευ, 10 Σεπ 2018 στις 5:05 π.μ., ο/η Graham Dumpleton <
>>> [email protected]> έγραψε:
>>>
>>>>
>>>>
>>>> On 10 Sep 2018, at 11:52 am, Νίκος Βέργος <[email protected]>
>>>> wrote:
>>>>
>>>> Graham i know you helped me a lot but my script cannot work if i don;t
>>>> het this oe sorted out and i'am trying for hours allready.
>>>>
>>>> Please do help.
>>>>
>>>>
>>>> I have 3 wsgi scripts listening on 3 locations. What i'm trying to run
>>>> an wsgi script from within another wsgi script with the following
>>>> statement.
>>>>
>>>>
>>>> page = 'clientele'
>>>> pdata = requests.get( 'http://superhost.gr/' + page )
>>>> pdata = pdata.text + counter
>>>>
>>>> Have you tried to add print() statements into your code, when it is
>>>> running and what variables are at each point? If you use print(), what you
>>>> print will appear in the Apache error log so you can see it. As per example
>>>> in requests docs at:
>>>>
>>>> http://docs.python-requests.org/en/master/
>>>>
>>>> you don't even appear to check the response status code. Check such
>>>> things, print out the values and see what it is getting.
>>>>
>>>> page = the location of another wsgi app.
>>>>
>>>> The error i'am getting when for i.e i try to load
>>>> http://superhost.gr/clientele
>>>>
>>>>
>>>> mod_wsgi (pid=7152): Exception occurred processing WSGI script
>>>> '/home/nikos/public_html/app.py'
>>>> OSError: Apache/mod_wsgi failed to write response data: Broken pipe.
>>>>
>>>> This specific message from mod_wsgi indicates that the HTTP client
>>>> making the request dropped the connection before the server could write the
>>>> response.
>>>>
>>>> So possibly an error is occurring in app.py if that is what is calling
>>>> it.
>>>>
>>>> Have you enabled Flask debug so that errors are shown in the browser
>>>> for you. If you don't, Flask will just return a 500 error and may not
>>>> actually log anything about the error. You may need to set up Flask logging
>>>> so that it logs details of exceptions to the error log.
>>>>
>>>> http://flask.pocoo.org/docs/1.0/logging/#logging
>>>>
>>>> The other script by itself executes normally but NOT from within my
>>>> app.py script.
>>>>
>>>> Any ideas on how to execute a wsgi app (b) from within a wsgi app(a)
>>>> and store the response as html data?
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "modwsgi" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at https://groups.google.com/group/modwsgi.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>>
>>>>
>>>> --
>>>> You received this message because you are subscribed to a topic in the
>>>> Google Groups "modwsgi" group.
>>>> To unsubscribe from this topic, visit
>>>> https://groups.google.com/d/topic/modwsgi/lZDr6zKcyUg/unsubscribe.
>>>> To unsubscribe from this group and all its topics, send an email to
>>>> [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at https://groups.google.com/group/modwsgi.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "modwsgi" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To post to this group, send email to [email protected].
>>> Visit this group at https://groups.google.com/group/modwsgi.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>>
>>>
>>> --
>>> You received this message because you are subscribed to a topic in the
>>> Google Groups "modwsgi" group.
>>> To unsubscribe from this topic, visit
>>> https://groups.google.com/d/topic/modwsgi/lZDr6zKcyUg/unsubscribe.
>>> To unsubscribe from this group and all its topics, send an email to
>>> [email protected].
>>> To post to this group, send email to [email protected].
>>> Visit this group at https://groups.google.com/group/modwsgi.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "modwsgi" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at https://groups.google.com/group/modwsgi.
>> For more options, visit https://groups.google.com/d/optout.
>>
>>
>>
>> --
>> You received this message because you are subscribed to a topic in the
>> Google Groups "modwsgi" group.
>> To unsubscribe from this topic, visit
>> https://groups.google.com/d/topic/modwsgi/lZDr6zKcyUg/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to
>> [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at https://groups.google.com/group/modwsgi.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
> --
> You received this message because you are subscribed to the Google Groups
> "modwsgi" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/modwsgi.
> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to a topic in the
> Google Groups "modwsgi" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/modwsgi/lZDr6zKcyUg/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/modwsgi.
> For more options, visit https://groups.google.com/d/optout.
>
--
You received this message because you are subscribed to the Google Groups
"modwsgi" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/modwsgi.
For more options, visit https://groups.google.com/d/optout.