You are better off restating your problem from scratch, with errors you see, 
any configuration etc. One cannot assume it is the same problem. So do that and 
can then help.

Graham

> On 13 Jun 2018, at 6:24 pm, Rajeev Jain <jainr...@gmail.com> wrote:
> 
> HI, Did yu have any luck? I'm having the same exact issue.
> best,
> -R
>  
> 
> On Thursday, May 11, 2017 at 1:34:33 PM UTC-7, Brian wrote:
> Graham,
> 
> Thank you so much. I plan to use Anaconda for this project and so maybe using 
> another tool is best? I don't want to give up on this direction if you think 
> it will be fruitful, but maybe nginx + gunicorn + flask in a conda installed 
> env is better? I'm even considering just deploying to Heroku. 
> 
> Thanks again and if you have any thoughts, I'm certainly game to hear what 
> you think.
> 
> Best,
> -Brian
> On Tuesday, May 9, 2017 at 7:52:04 PM UTC-6, Graham Dumpleton wrote:
> If you want to use Anaconda Python with mod_wsgi, the steps you need to 
> follow are as follows.
> 
> 1. Uninstall any system wide mod_wsgi package as you do not need it and it 
> can interfere.
> 
>      sudo apt-get uninstall libapache2-mod-wsgi
> 
> 2. Ensure 'dev' packages for Python and Apache installed.
> 
> 3. You are better off using virtual environment created using virtualenv 
> rather than using a conda env. I am not sure what set up steps need to be if 
> using conda env right now. With virtual environment created using virtualenv, 
> activate it.
> 
> 4. Install mod_wsgi using pip.
> 
> 5. Run:
> 
>     mod_wsgi-express module-config
> 
> and take the output of this and put it in a 'wsgi.load' file in the 
> 'mods-available' directive of your Apache installation.
> 
> 6. Enable the Apache module. Either run:
> 
>     sudo a2enmod wsgi
> 
> or symlink wsgi.load in to the 'mods-enabled' directory and restart Apache.
> 
> Verify that Apache starts up okay.
> 
> 7. Manually configure Apache for mod_wsgi with a WSGI hello world program, 
> restart Apache and verify that it works.
> 
> 8. Add configuration for mod_wsgi to Apache sites file for your Flask 
> application. Use the recommended steps for setting up a Python virtual 
> environment as documented in:
> 
>     
> http://modwsgi.readthedocs.io/en/develop/user-guides/virtual-environments.html
>  
> <http://modwsgi.readthedocs.io/en/develop/user-guides/virtual-environments.html>
> 
> Don't use 'python-path' with 'site-packages'. Use 'python-home' with the root 
> of the Python virtual environment instead.
> 
> See if it works.
> 
> Would like to see you use virtualenv before we sort out what needs to be done 
> for conda env. I can't remember right now how compatible conda env 
> directories are with normal Python virtual environments.
> 
> Graham
> 
>> On 9 May 2017, at 6:55 AM, Graham Dumpleton <graham.d...@gmail.com <>> wrote:
>> 
>> Just read again. You are using system package for mod_wsgi, not that 
>> installed for Anaconda. You should not be using both installs. Will send 
>> back instructions later when have time.
>> 
>> Graham
>> 
>>> On 9 May 2017, at 6:47 AM, Brian <the.lehm...@gmail.com <>> wrote:
>>> 
>>> Thanks Graham. 
>>> 
>>> I did edit the FlaskApp.config file:
>>> <VirtualHost *:80>
>>>                 ServerName <public ip>.us-west-2.compute.amazonaws.com 
>>> <http://us-west-2.compute.amazonaws.com/>
>>>                 ServerAdmin ubuntu@ec2-<public 
>>> ip>.us-west-2.compute.amazonaws.com 
>>> <http://us-west-2.compute.amazonaws.com/>
>>>                 WSGIScriptAlias / /var/www/FlaskApp/flaskapp.wsgi
>>>                 <Directory /var/www/FlaskApp/FlaskApp/>
>>>                         Order allow,deny
>>>                         Allow from all
>>>                 </Directory>
>>>                 Alias /static /var/www/FlaskApp/FlaskApp/static
>>>                 <Directory /var/www/FlaskApp/FlaskApp/static/>
>>>                         Order allow,deny
>>>                         Allow from all
>>>                 </Directory>
>>>                 WSGIDaemonProcess FlaskApp 
>>> python-path=/home/ubuntu/anaconda3/envs/test1.0/lib/python3.6/site-packages
>>>                 ErrorLog ${APACHE_LOG_DIR}/error.log
>>>                 LogLevel warn
>>>                 CustomLog ${APACHE_LOG_DIR}/access.log combined
>>> </VirtualHost>
>>> 
>>> And then applied following new step in the process:
>>> 
>>> ## get apache2
>>> sudo apt-get install apache2
>>> sudo apt-get install apache2-dev
>>> 
>>> ## get mod_wsgi
>>> #sudo apt-get install libapache2-mod-wsgi
>>> pip install mod_wsgi
>>> 
>>> ## force load Anaconda's shared library
>>> mod_wsgi-express module-config
>>> 
>>> ## enable mod_wsgi
>>> sudo a2enmod wsgi 
>>> 
>>> ## Install and register the mod_wsgi module with Apache  
>>> <--------------------------
>>> sudo `which mod_wsgi-express` install-module
>>> 
>>> ## get git 
>>> sudo apt-get install git
>>> 
>>> ## create apache config
>>> touch /etc/apache2/sites-available/FlaskApp.conf
>>> 
>>> ## disable default config
>>> sudo a2dissite 000-default
>>> 
>>> ## provide new config
>>> sudo a2ensite FlaskApp.conf
>>> 
>>> ## start/restart apache
>>> sudo service apache2 restart
>>> 
>>> The same error occurs in the log:
>>>  Traceback (most recent call last):
>>>    File "/var/www/FlaskApp/flaskapp.wsgi", line 7, in <module>
>>>      from FlaskApp import app as application
>>>    File "/var/www/FlaskApp/FlaskApp/__init__.py", line 1, in <module>
>>>      from flask import Flask
>>>  ImportError: No module named flask
>>> 
>>> Thoughts?
>>> 
>>> Best,
>>> -Brian
>>> On Monday, May 8, 2017 at 2:21:12 PM UTC-6, Graham Dumpleton wrote:
>>> Did you read:
>>> 
>>>     
>>> http://modwsgi.readthedocs.io/en/develop/user-guides/virtual-environments.html
>>>  
>>> <http://modwsgi.readthedocs.io/en/develop/user-guides/virtual-environments.html>
>>> 
>>> as I linked to.
>>> 
>>> There is no evidence that you have added anything for a Python virtual 
>>> environment if you are using one.
>>> 
>>> Graham
>>> 
>>>> On 9 May 2017, at 4:25 AM, Brian <the.lehm...@ <>gmail.com 
>>>> <http://gmail.com/>> wrote:
>>>> 
>>>> The conda environment must not be set correctly because it can't find 
>>>> flask:
>>>> 
>>>> [Mon May 08 16:39:11.002873 2017] [:error] [pid 31696:tid 139896253531904] 
>>>> [client 208.184.3.194:36413] Traceback (most recent call last):
>>>> 
>>>>  
>>>> 
>>>> [Mon May 08 16:39:11.002923 2017] [:error] [pid 31696:tid 139896253531904] 
>>>> [client 208.184.3.194:36413]   File "/var/www/FlaskApp/flaskapp.wsgi", 
>>>> line 7, in <module> 
>>>> 
>>>> [Mon May 08 16:39:11.002989 2017] [:error] [pid 31696:tid 139896253531904] 
>>>> [client 208.184.3.194:36413]     from FlaskApp import app as application 
>>>> 
>>>> [Mon May 08 16:39:11.003012 2017] [:error] [pid 31696:tid 139896253531904] 
>>>> [client 208.184.3.194:36413]   File 
>>>> "/var/www/FlaskApp/FlaskApp/__init__.py", line 1, in <module> 
>>>> 
>>>> [Mon May 08 16:39:11.003044 2017] [:error] [pid 31696:tid 139896253531904] 
>>>> [client 208.184.3.194:36413]     from flask import Flask 
>>>> 
>>>> [Mon May 08 16:39:11.003081 2017] [:error] [pid 31696:tid 139896253531904] 
>>>> [client 208.184.3.194:36413] ImportError: No module named flask
>>>> 
>>>> 
>>>> On Monday, May 8, 2017 at 11:45:31 AM UTC-6, Vanessa Marques wrote:
>>>> Brian, check out /var/log/apache2/error.log to see the errors and let us 
>>>> know what is in there. 
>>>> 
>>>> I'm having the exact same challenge as you (trying to configure flask + 
>>>> apache + anaconda + mod_wsgi on an ubuntu EC2 instance). 
>>>> 
>>>> On Monday, May 8, 2017 at 1:59:16 PM UTC-3, Brian wrote:
>>>> Thank you Graham. 
>>>> 
>>>> Any recs on testing and/or debugging a 500 internal server error when I 
>>>> try to hit the site? I'm assuming that it's in the configuration so I'm 
>>>> going to add full details of the process and config files below. 
>>>> 
>>>> All commands ran:
>>>> ## build conda environment
>>>> 
>>>> conda create --name test1.0 python==3.6.1 pandas jupyter requests flask
>>>> 
>>>> 
>>>> 
>>>> ## activate conda environment 
>>>> 
>>>> source activate test1.0
>>>> 
>>>>  
>>>> ## get apache2
>>>> 
>>>> sudo apt-get install apache2
>>>> 
>>>> sudo apt-get install apache2-dev
>>>> 
>>>> 
>>>> 
>>>> ## get mod_wsgi
>>>> 
>>>> #sudo apt-get install libapache2-mod-wsgi
>>>> 
>>>> pip install mod_wsgi
>>>> 
>>>> 
>>>> 
>>>> ## force load Anaconda's shared library
>>>> 
>>>> mod_wsgi-express module-config
>>>> 
>>>> 
>>>> 
>>>> ## enable mod_wsgi
>>>> 
>>>> sudo a2enmod wsgi 
>>>> 
>>>> 
>>>> 
>>>> ## get git 
>>>> 
>>>> sudo apt-get install git
>>>> 
>>>> 
>>>> 
>>>> ## create config for apache to know about wsgi and flask app
>>>> 
>>>> touch /etc/apache2/sites-available/FlaskApp.conf
>>>> 
>>>> 
>>>> 
>>>> ## disable default config
>>>> 
>>>> sudo a2dissite 000-default
>>>> 
>>>> 
>>>> 
>>>> ## provide new config
>>>> 
>>>> sudo a2ensite FlaskApp.conf
>>>> 
>>>> 
>>>> 
>>>> ## start/restart apache
>>>> 
>>>> sudo service apache2 restart
>>>> 
>>>> 
>>>> Contents of FlaskApp.conf:
>>>> <VirtualHost *:80>
>>>> 
>>>>                 ServerName <IPv4 PUBLIC IP>
>>>> 
>>>>                 ServerAdmin ubuntu@<IPv4 PUBLIC 
>>>> IP>.us-west-2.compute.amazonaws.com 
>>>> <http://us-west-2.compute.amazonaws.com/>
>>>>                 WSGIScriptAlias / /var/www/FlaskApp/flaskapp.wsgi
>>>> 
>>>>                 <Directory /var/www/FlaskApp/FlaskApp/>
>>>> 
>>>>                         Order allow,deny
>>>> 
>>>>                         Allow from all
>>>> 
>>>>                 </Directory>
>>>> 
>>>>                 Alias /static /var/www/FlaskApp/FlaskApp/static
>>>> 
>>>>                 <Directory /var/www/FlaskApp/FlaskApp/static/>
>>>> 
>>>>                         Order allow,deny
>>>> 
>>>>                         Allow from all
>>>> 
>>>>                 </Directory>
>>>> 
>>>>                 ErrorLog ${APACHE_LOG_DIR}/error.log
>>>> 
>>>>                 LogLevel warn
>>>> 
>>>>                 CustomLog ${APACHE_LOG_DIR}/access.log combined
>>>> 
>>>> </VirtualHost>
>>>> 
>>>> 
>>>> Location of flask app and .wsgi file.
>>>> (test1.0) ubuntu:/var/www$ tree
>>>> 
>>>> .
>>>> 
>>>> ├── FlaskApp
>>>> 
>>>>    ├── FlaskApp
>>>> 
>>>>    │   ├── __init__.py
>>>> 
>>>>    │   ├── static
>>>> 
>>>>    │   └── templates
>>>> 
>>>>    └── flaskapp.wsgi
>>>> 
>>>> 
>>>> Contents of flaskapp.wsgi:
>>>> #!/usr/bin/python
>>>> 
>>>> import sys
>>>> 
>>>> import logging
>>>> 
>>>> logging.basicConfig(stream=sys.stderr)
>>>> 
>>>> sys.path.insert(0,"/var/www/FlaskApp/")
>>>> 
>>>> 
>>>> 
>>>> from FlaskApp import app as application
>>>> 
>>>> application.secret_key = '<secret>'
>>>> 
>>>> 
>>>> Contents of __init__.py:
>>>> from flask import Flask
>>>> 
>>>> app = Flask(__name__)
>>>> 
>>>> @app.route("/")
>>>> 
>>>> def hello():
>>>> 
>>>>     return "Hello World (flask via conda env)!"
>>>> 
>>>> if __name__ == "__main__":
>>>> 
>>>>     app.run()
>>>> 
>>>> 
>>>> When visiting the site, I get a 500 internal server error. I likely messed 
>>>> up something with the config. Any help is greatly appreciated.
>>>> 
>>>> Best,
>>>> -Brian
>>>> 
>>>> On Sunday, May 7, 2017 at 6:32:18 PM UTC-6, Graham Dumpleton wrote:
>>>> In the first instance you should ensure things work with a WSGI hello 
>>>> world, no Flask framework. This ensures setup with Anaconda Python is 
>>>> okay, which sometimes doesn't always work because of stupid things 
>>>> Anaconda Python does which breaks the ability to use it in embedded 
>>>> systems.
>>>> 
>>>> As to deploying Flask, the Flask documentation has details:
>>>> 
>>>> * http://flask.pocoo.org/docs/0.12/deploying/mod_wsgi/ 
>>>> <http://flask.pocoo.org/docs/0.12/deploying/mod_wsgi/>
>>>> 
>>>> Also ensure you read:
>>>> 
>>>> * 
>>>> http://modwsgi.readthedocs.io/en/develop/user-guides/virtual-environments.html
>>>>  
>>>> <http://modwsgi.readthedocs.io/en/develop/user-guides/virtual-environments.html>
>>>> 
>>>> so you are setting up any Python virtual environment correctly as guides 
>>>> for frameworks often don't suggest the preferred method, or simply don't 
>>>> address it.
>>>> 
>>>> Graham
>>>> 
>>>>> On 7 May 2017, at 8:00 AM, Brian Lehman <the.lehm...@gmail.com <>> wrote:
>>>>> 
>>>>> Thanks Graham. So everything is installed. Being brand new to this world, 
>>>>> I'm looking for a tutorial to (and please forgive me as I'm likely using 
>>>>> the wrong terminology) see how to tell Apache to use mod_wsgi to run my 
>>>>> flask app. I'm guessing that I need to change some config files in Apache 
>>>>> to use my conda environment and then write some .wsgi file? However, I'm 
>>>>> seeing quite a few different threads on this subject. Any advice is 
>>>>> greatly appreciated.   
>>>>> 
>>>>> ## get apache2
>>>>> sudo apt-get install apache2
>>>>> sudo apt-get install apache2-dev
>>>>> 
>>>>> ## get mod_wsgi
>>>>> pip install mod_wsgi
>>>>> 
>>>>> #force load Anaconda's shared library
>>>>> mod_wsgi-express module-config
>>>>> 
>>>>> ## start/restart apache
>>>>> sudo service apache2 restart 
>>>>> 
>>>>> On Thursday, May 4, 2017 at 4:22:08 PM UTC-6, Graham Dumpleton wrote:
>>>>> As per instructions in:
>>>>> 
>>>>>     https://pypi.python.org/pypi/mod_wsgi 
>>>>> <https://pypi.python.org/pypi/mod_wsgi>
>>>>> 
>>>>> You need to ensure you have the 'dev' packages for Apache installed.
>>>>> 
>>>>> If you are running Debian or Ubuntu Linux with Apache 2.4 system 
>>>>> packages, regardless of which Apache MPM is being used, you would need 
>>>>> both:
>>>>> 
>>>>>     apache2
>>>>>     apache2-dev
>>>>> 
>>>>> Note that if using Anaconda Python, after having installed mod_wsgi with 
>>>>> pip, ensure you run:
>>>>> 
>>>>>     mod_wsgi-express module-config
>>>>> 
>>>>> to show the configuration you need to include in the system Apache if you 
>>>>> intend manually configuring it for mod_wsgi, instead of using 
>>>>> 'mod_wsgi-express start-server'.
>>>>> 
>>>>> This is necessary as Anaconda Python can require extra configuration 
>>>>> directives to force load its shared library. That command should output 
>>>>> the appropriate lines, although just check that the generated line for 
>>>>> LoadFile directive actually points at a valid path. Seen one report where 
>>>>> for Anaconda Python the path it generated was wrong and it had to be 
>>>>> changed.
>>>>> 
>>>>> Graham
>>>>> 
>>>>>> On 5 May 2017, at 2:54 AM, Brian Lehman <the.lehm...@ <>gmail.com 
>>>>>> <http://gmail.com/>> wrote:
>>>>>> 
>>>>>> Good day. When I try to pip install mod_wsgi inside of an anaconda env 
>>>>>> called test1.0 on an aws ec2 instance w/ ubuntu, I get the folowing 
>>>>>> error. Any suggestions?
>>>>>> 
>>>>>> (test1.0) ubuntu$ python --version 
>>>>>> 
>>>>>> Python 3.6.1 :: Continuum Analytics, Inc.
>>>>>> 
>>>>>> (test1.0) ubuntu$ 
>>>>>> 
>>>>>> (test1.0) ubuntu$ 
>>>>>> 
>>>>>> (test1.0) ubuntu$ pip install mod_wsgi
>>>>>> 
>>>>>> Collecting mod_wsgi
>>>>>> 
>>>>>>   Using cached mod_wsgi-4.5.15.tar.gz
>>>>>> 
>>>>>>     Complete output from command python setup.py egg_info:
>>>>>> 
>>>>>>     Traceback (most recent call last):
>>>>>> 
>>>>>>       File "<string>", line 1, in <module>
>>>>>> 
>>>>>>       File "/tmp/pip-build-80walwu3/mod-wsgi/setup.py", line 164, in 
>>>>>> <module>
>>>>>> 
>>>>>>         'missing Apache httpd server packages.' % APXS)
>>>>>> 
>>>>>>     RuntimeError: The 'apxs' command appears not to be installed or is 
>>>>>> not executable. Please check the list of prerequisites in the 
>>>>>> documentation for this package and install any missing Apache httpd 
>>>>>> server packages.
>>>>>> 
>>>>>>     
>>>>>>     ----------------------------------------
>>>>>> 
>>>>>> Command "python setup.py egg_info" failed with error code 1 in 
>>>>>> /tmp/pip-build-80walwu3/mod-wsgi/
>>>>>> 
>>>>>> 
>>>>>> -- 
>>>>>> 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 modwsgi+u...@ <>googlegroups.com <http://googlegroups.com/>.
>>>>>> To post to this group, send email to mod...@ <>googlegroups.com 
>>>>>> <http://googlegroups.com/>.
>>>>>> Visit this group at https://groups.google.com/group/modwsgi 
>>>>>> <https://groups.google.com/group/modwsgi>.
>>>>>> For more options, visit https://groups.google.com/d/optout 
>>>>>> <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 modwsgi+u...@googlegroups.com <>.
>>>>> To post to this group, send email to mod...@googlegroups.com <>.
>>>>> Visit this group at https://groups.google.com/group/modwsgi 
>>>>> <https://groups.google.com/group/modwsgi>.
>>>>> For more options, visit https://groups.google.com/d/optout 
>>>>> <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 modwsgi+u...@googlegroups.com <>.
>>>> To post to this group, send email to mod...@googlegroups.com <>.
>>>> Visit this group at https://groups.google.com/group/modwsgi 
>>>> <https://groups.google.com/group/modwsgi>.
>>>> For more options, visit https://groups.google.com/d/optout 
>>>> <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 modwsgi+u...@googlegroups.com <>.
>>> To post to this group, send email to mod...@googlegroups.com <>.
>>> Visit this group at https://groups.google.com/group/modwsgi 
>>> <https://groups.google.com/group/modwsgi>.
>>> For more options, visit https://groups.google.com/d/optout 
>>> <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 modwsgi+unsubscr...@googlegroups.com 
> <mailto:modwsgi+unsubscr...@googlegroups.com>.
> To post to this group, send email to modwsgi@googlegroups.com 
> <mailto:modwsgi@googlegroups.com>.
> Visit this group at https://groups.google.com/group/modwsgi 
> <https://groups.google.com/group/modwsgi>.
> For more options, visit https://groups.google.com/d/optout 
> <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 modwsgi+unsubscr...@googlegroups.com.
To post to this group, send email to modwsgi@googlegroups.com.
Visit this group at https://groups.google.com/group/modwsgi.
For more options, visit https://groups.google.com/d/optout.

Reply via email to