(projectenv) [user@echo project]$ uwsgi --http :8000 --chdir /home/user/env/project/project/ --module project.wsgi --virtualenv /home/user/env/projectenv/*** Starting uWSGI 2.0.15 (64bit) on [Thu Jun 1 13:37:09 2017] ***compiled with version: 4.8.5 20150623 (Red Hat 4.8.5-11) on 30 May 2017 20:50:53os: Linux-3.10.0-514.10.2.el7.x86_64 #1 SMP Fri Mar 3 00:04:05 UTC 2017nodename: echo.commachine: x86_64clock source: unixpcre jit disableddetected number of CPU cores: 2current working directory: /home/user/env/projectdetected binary path: /usr/local/bin/uwsgichdir() to /home/user/env/project/project/*** WARNING: you are running uWSGI without its master process manager ***your processes number limit is 4096your memory page size is 4096 bytesdetected max file descriptor number: 1024lock engine: pthread robust mutexesthunder lock: disabled (you can enable it with --thunder-lock)uWSGI http bound on :8000 fd 4spawned uWSGI http 1 (pid: 22015)uwsgi socket 0 bound to TCP address 127.0.0.1:38735 (port auto-assigned) fd 3Python version: 3.6.1 (default, May 29 2017, 14:21:37) [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)]Set PythonHome to /home/user/env/projectenv/*** Python threads support is disabled. You can enable it with --enable-threads ***Python main interpreter initialized at 0x175a660your server socket listen backlog is limited to 100 connectionsyour mercy for graceful operations on workers is 60 secondsmapped 72768 bytes (71 KB) for 1 cores*** Operational MODE: single process ***ModuleNotFoundError: No module named 'project'unable to load app 0 (mountpoint='') (callable not found or import error)*** no app loaded. going in full dynamic mode ****** uWSGI is running in multiple interpreter mode ***spawned uWSGI worker 1 (and the only) (pid: 22014, cores: 1)
On Thursday 01 June 2017 10:47:05 F. Nikita Thomas wrote:
> Hi!
> I'm having a problem with configuring uWSGI with Django, when I run
> the development server everything 'seems' okay, except that I am
> missing styling on the html, and when I test run uWSGI from the
> command line I get:
...
> chdir() to /home/user/env/project/project/
...
> And I don't know whether it's a path or import thing or what. Thanks.
It's a chdir thing. Move up one, so /home/user/env/project.
--
Melvyn Sopacua
(projectenv) [user@echo project]$ uwsgi --http :8000 --chdir /home/user/Env/project/ --module project.wsgi --virtualenv /home/user/Env/projectenv/*** Starting uWSGI 2.0.15 (64bit) on [Thu Jun 1 17:09:34 2017] ***
compiled with version: 4.8.5 20150623 (Red Hat 4.8.5-11) on 30 May 2017 20:50:53os: Linux-3.10.0-514.10.2.el7.x86_64 #1 SMP Fri Mar 3 00:04:05 UTC 2017nodename: echo.commachine: x86_64clock source: unixpcre jit disableddetected number of CPU cores: 2
current working directory: /home/user/Env/projectdetected binary path: /usr/local/bin/uwsgichdir() to /home/atticus/Env/project/
*** WARNING: you are running uWSGI without its master process manager ***your processes number limit is 4096your memory page size is 4096 bytesdetected max file descriptor number: 1024lock engine: pthread robust mutexesthunder lock: disabled (you can enable it with --thunder-lock)uWSGI http bound on :8000 fd 4
spawned uWSGI http 1 (pid: 22389)uwsgi socket 0 bound to TCP address 127.0.0.1:34994 (port auto-assigned) fd 3
Python version: 3.6.1 (default, May 29 2017, 14:21:37) [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)]
Set PythonHome to /home/user/Env/projectenv/
*** Python threads support is disabled. You can enable it with --enable-threads ***
Python main interpreter initialized at 0x76b6d0
your server socket listen backlog is limited to 100 connectionsyour mercy for graceful operations on workers is 60 secondsmapped 72768 bytes (71 KB) for 1 cores*** Operational MODE: single process ***
Traceback (most recent call last): File "./project/wsgi.py", line 12, in <module> from django.core.wsgi import get_wsgi_applicationModuleNotFoundError: No module named 'django'
unable to load app 0 (mountpoint='') (callable not found or import error)*** no app loaded. going in full dynamic mode ****** uWSGI is running in multiple interpreter mode ***
spawned uWSGI worker 1 (and the only) (pid: 22388, cores: 1)^C
*** Operational MODE: single process ***Traceback (most recent call last):File "./project/wsgi.py", line 12, in <module>from django.core.wsgi import get_wsgi_applicationModuleNotFoundError: No module named 'django'unable to load app 0 (mountpoint='') (callable not found or import error)*** no app loaded. going in full dynamic mode ****** uWSGI is running in multiple interpreter mode ***spawned uWSGI worker 1 (and the only) (pid: 22388, cores: 1)^C
Shouldn't it see the Django installation in the virtualenv? I haven't had this much fun since I had my wisdom teeth removed .... Thanks again!
(projectenv) [user@echo project]$ ls -al projectenv/bin/total 84drwxrwxr-x 3 user user 4096 Jun 1 14:28 .drwxrwxr-x 5 user user 4096 Jun 1 14:26 ..-rw-rw-r-- 1 user user 2095 Jun 1 14:26 activate-rw-rw-r-- 1 user user 1037 Jun 1 14:26 activate.csh-rw-rw-r-- 1 user user 2191 Jun 1 14:26 activate.fish-rw-rw-r-- 1 user user 1137 Jun 1 14:26 activate_this.py-rwxrwxr-x 1 user user 301 Jun 1 14:28 django-admin-rwxrwxr-x 1 user user 159 Jun 1 14:28 django-admin.py-rwxrwxr-x 1 user user 268 Jun 1 14:26 easy_install-rwxrwxr-x 1 user user 268 Jun 1 14:26 easy_install-3.6-rwxrwxr-x 1 user user 240 Jun 1 14:26 pip-rwxrwxr-x 1 user user 240 Jun 1 14:26 pip3-rwxrwxr-x 1 user user 240 Jun 1 14:26 pip3.6drwxrwxr-x 2 user user 4096 Jun 1 14:28 __pycache__lrwxrwxrwx 1 user user 9 Jun 1 14:26 python -> python3.6lrwxrwxrwx 1 user user 9 Jun 1 14:26 python3 -> python3.6-rwxrwxr-x 1 user user 17776 Jun 1 14:26 python3.6-rwxrwxr-x 1 user user 2354 Jun 1 14:26 python-config-rwxrwxr-x 1 user user 247 Jun 1 14:26 wheel
On Thursday 01 June 2017 15:03:34 F. Nikita Thomas wrote:
> Here's the directory listing for my virtual environment:
> (projectenv) [user@echo project]$ ls -al projectenv/bin/
More important is projectenv/lib/site-packages.
But the test to do as James pointed out is to test if your virtualenv is correct. I'm missing the line where uwsgi tells you it detected a "PEP 405 virtualenv".
So, from /home/user/env/project/, with the virtual env activated:
python manage.py check
If that can't import django either, show an ls of above mentioned site-packages.
If it does work, try starting uwsgi from a different terminal tab, where the virtual environment is not activated.
If you run into "can't find settings", add --env DJANGO_SETTINGS_MODULE=project.settings
--
Melvyn Sopacua
[user@echo project]$ which python/usr/bin/python
[user@echo project]$ python -VPython 2.7.5[user@echo project]$ . projectenv/bin/activate(projectenv) [user@echo project]$ which python~/Env/project/projectenv/bin/python
(projectenv) [user@echo project]$ python -VPython 3.6.1
(projectenv) [user@echo project]$ ls
foobar.py manage.py project projectenv(projectenv) [user@echo project]$ python manage.py checkSystem check identified no issues (0 silenced).
(projectenv) [user@echo project]$ ls -al projectenv/
total 24
drwxrwxr-x 5 user user 4096 Jun 1 14:26 .
drwxrwxr-x 4 user user 4096 Jun 1 19:09 ..drwxrwxr-x 3 user user 4096 Jun 1 14:28 bindrwxrwxr-x 2 user user 4096 Jun 1 14:26 includedrwxrwxr-x 3 user user 4096 Jun 1 14:26 lib-rw-rw-r-- 1 user user 60 Jun 1 14:26 pip-selfcheck.json(projectenv) [user@echo project]$ ls -al projectenv/lib/total 12drwxrwxr-x 3 user user 4096 Jun 1 14:26 .
drwxrwxr-x 5 user user 4096 Jun 1 14:26 ..
drwxrwxr-x 5 user user 4096 Jun 1 14:26 python3.6(projectenv) [user@echo project]$ ls -al projectenv/include/total 8drwxrwxr-x 2 user user 4096 Jun 1 14:26 .
drwxrwxr-x 5 user user 4096 Jun 1 14:26 ..
lrwxrwxrwx 1 user user 29 Jun 1 14:26 python3.6m -> /usr/local/include/python3.6m(projectenv) [user@echo project]$ ls -al projectenv/lib/python3.6/total 52
drwxrwxr-x 5 user user 4096 Jun 1 14:26 .
drwxrwxr-x 3 user user 4096 Jun 1 14:26 ..lrwxrwxrwx 1 user user 31 Jun 1 14:26 abc.py -> /usr/local/lib/python3.6/abc.pylrwxrwxrwx 1 user user 34 Jun 1 14:26 base64.py -> /usr/local/lib/python3.6/base64.pylrwxrwxrwx 1 user user 34 Jun 1 14:26 bisect.py -> /usr/local/lib/python3.6/bisect.pylrwxrwxrwx 1 user user 39 Jun 1 14:26 _bootlocale.py -> /usr/local/lib/python3.6/_bootlocale.pylrwxrwxrwx 1 user user 34 Jun 1 14:26 codecs.py -> /usr/local/lib/python3.6/codecs.pylrwxrwxrwx 1 user user 36 Jun 1 14:26 collections -> /usr/local/lib/python3.6/collectionslrwxrwxrwx 1 user user 44 Jun 1 14:26 _collections_abc.py -> /usr/local/lib/python3.6/_collections_abc.pylrwxrwxrwx 1 user user 53 Jun 1 14:26 config-3.6m-x86_64-linux-gnu -> /usr/local/lib/python3.6/config-3.6m-x86_64-linux-gnulrwxrwxrwx 1 user user 32 Jun 1 14:26 copy.py -> /usr/local/lib/python3.6/copy.pylrwxrwxrwx 1 user user 35 Jun 1 14:26 copyreg.py -> /usr/local/lib/python3.6/copyreg.pydrwxrwxr-x 3 user user 4096 Jun 1 14:26 distutilslrwxrwxrwx 1 user user 41 Jun 1 14:26 _dummy_thread.py -> /usr/local/lib/python3.6/_dummy_thread.pylrwxrwxrwx 1 user user 34 Jun 1 14:26 encodings -> /usr/local/lib/python3.6/encodingslrwxrwxrwx 1 user user 32 Jun 1 14:26 enum.py -> /usr/local/lib/python3.6/enum.pylrwxrwxrwx 1 user user 35 Jun 1 14:26 fnmatch.py -> /usr/local/lib/python3.6/fnmatch.pylrwxrwxrwx 1 user user 37 Jun 1 14:26 functools.py -> /usr/local/lib/python3.6/functools.pylrwxrwxrwx 1 user user 38 Jun 1 14:26 __future__.py -> /usr/local/lib/python3.6/__future__.pylrwxrwxrwx 1 user user 39 Jun 1 14:26 genericpath.py -> /usr/local/lib/python3.6/genericpath.pylrwxrwxrwx 1 user user 35 Jun 1 14:26 hashlib.py -> /usr/local/lib/python3.6/hashlib.pylrwxrwxrwx 1 user user 33 Jun 1 14:26 heapq.py -> /usr/local/lib/python3.6/heapq.pylrwxrwxrwx 1 user user 32 Jun 1 14:26 hmac.py -> /usr/local/lib/python3.6/hmac.pylrwxrwxrwx 1 user user 34 Jun 1 14:26 importlib -> /usr/local/lib/python3.6/importliblrwxrwxrwx 1 user user 31 Jun 1 14:26 imp.py -> /usr/local/lib/python3.6/imp.pylrwxrwxrwx 1 user user 30 Jun 1 14:26 io.py -> /usr/local/lib/python3.6/io.pylrwxrwxrwx 1 user user 35 Jun 1 14:26 keyword.py -> /usr/local/lib/python3.6/keyword.pylrwxrwxrwx 1 user user 36 Jun 1 14:26 lib-dynload -> /usr/local/lib/python3.6/lib-dynloadlrwxrwxrwx 1 user user 37 Jun 1 14:26 linecache.py -> /usr/local/lib/python3.6/linecache.pylrwxrwxrwx 1 user user 34 Jun 1 14:26 locale.py -> /usr/local/lib/python3.6/locale.py-rw-rw-r-- 1 user user 0 Jun 1 14:26 no-global-site-packages.txtlrwxrwxrwx 1 user user 34 Jun 1 14:26 ntpath.py -> /usr/local/lib/python3.6/ntpath.pylrwxrwxrwx 1 user user 36 Jun 1 14:26 operator.py -> /usr/local/lib/python3.6/operator.py-rw-rw-r-- 1 user user 10 Jun 1 14:26 orig-prefix.txtlrwxrwxrwx 1 user user 30 Jun 1 14:26 os.py -> /usr/local/lib/python3.6/os.pylrwxrwxrwx 1 user user 37 Jun 1 14:26 posixpath.py -> /usr/local/lib/python3.6/posixpath.pydrwxrwxr-x 2 user user 4096 Jun 1 14:26 __pycache__lrwxrwxrwx 1 user user 34 Jun 1 14:26 random.py -> /usr/local/lib/python3.6/random.pylrwxrwxrwx 1 user user 35 Jun 1 14:26 reprlib.py -> /usr/local/lib/python3.6/reprlib.pylrwxrwxrwx 1 user user 30 Jun 1 14:26 re.py -> /usr/local/lib/python3.6/re.pylrwxrwxrwx 1 user user 39 Jun 1 14:26 rlcompleter.py -> /usr/local/lib/python3.6/rlcompleter.pylrwxrwxrwx 1 user user 34 Jun 1 14:26 shutil.py -> /usr/local/lib/python3.6/shutil.pydrwxrwxr-x 16 user user 4096 Jun 1 14:28 site-packages-rw-rw-r-- 1 user user 27543 Jun 1 14:26 site.pylrwxrwxrwx 1 user user 39 Jun 1 14:26 sre_compile.py -> /usr/local/lib/python3.6/sre_compile.pylrwxrwxrwx 1 user user 41 Jun 1 14:26 sre_constants.py -> /usr/local/lib/python3.6/sre_constants.pylrwxrwxrwx 1 user user 37 Jun 1 14:26 sre_parse.py -> /usr/local/lib/python3.6/sre_parse.pylrwxrwxrwx 1 user user 32 Jun 1 14:26 stat.py -> /usr/local/lib/python3.6/stat.pylrwxrwxrwx 1 user user 34 Jun 1 14:26 struct.py -> /usr/local/lib/python3.6/struct.pylrwxrwxrwx 1 user user 35 Jun 1 14:26 tarfile.py -> /usr/local/lib/python3.6/tarfile.pylrwxrwxrwx 1 user user 36 Jun 1 14:26 tempfile.py -> /usr/local/lib/python3.6/tempfile.pylrwxrwxrwx 1 user user 36 Jun 1 14:26 tokenize.py -> /usr/local/lib/python3.6/tokenize.pylrwxrwxrwx 1 user user 33 Jun 1 14:26 token.py -> /usr/local/lib/python3.6/token.pylrwxrwxrwx 1 user user 33 Jun 1 14:26 types.py -> /usr/local/lib/python3.6/types.pylrwxrwxrwx 1 user user 36 Jun 1 14:26 warnings.py -> /usr/local/lib/python3.6/warnings.pylrwxrwxrwx 1 user user 35 Jun 1 14:26 weakref.py -> /usr/local/lib/python3.6/weakref.pylrwxrwxrwx 1 user user 39 Jun 1 14:26 _weakrefset.py -> /usr/local/lib/python3.6/_weakrefset.py(projectenv) [user@echo project]$ ls -al projectenv/lib/python3.6/site-packages/total 260drwxrwxr-x 16 user user 4096 Jun 1 14:28 .
drwxrwxr-x 5 user user 4096 Jun 1 14:26 ..
drwxrwxr-x 19 user user 4096 Jun 1 14:28 djangodrwxrwxr-x 2 user user 4096 Jun 1 14:28 Django-1.11.2.dist-info-rw-rw-r-- 1 user user 126 Jun 1 14:26 easy_install.pydrwxrwxr-x 2 user user 4096 Jun 1 14:28 mysqlclient-1.3.10.dist-info-rwxrwxr-x 1 user user 188728 Jun 1 14:28 _mysql.cpython-36m-x86_64-linux-gnu.sodrwxrwxr-x 4 user user 4096 Jun 1 14:28 MySQLdb-rw-rw-r-- 1 user user 2335 Jun 1 14:28 _mysql_exceptions.pydrwxrwxr-x 11 user user 4096 Jun 1 14:26 pipdrwxrwxr-x 2 user user 4096 Jun 1 14:26 pip-9.0.1.dist-infodrwxrwxr-x 5 user user 4096 Jun 1 14:26 pkg_resources
drwxrwxr-x 2 user user 4096 Jun 1 14:28 __pycache__
drwxrwxr-x 4 user user 4096 Jun 1 14:28 pytzdrwxrwxr-x 2 user user 4096 Jun 1 14:28 pytz-2017.2.dist-infodrwxrwxr-x 5 user user 4096 Jun 1 14:26 setuptoolsdrwxrwxr-x 2 user user 4096 Jun 1 14:26 setuptools-36.0.1.dist-infodrwxrwxr-x 6 user user 4096 Jun 1 14:26 wheeldrwxrwxr-x 2 user user 4096 Jun 1 14:26 wheel-0.29.0.dist-info(projectenv) [user@echo project]$
On Friday 02 June 2017 12:53:06 F. Nikita Thomas wrote:
> Thank you everyone and my apologies for the late reply, a friend
> passed. I did as requested and here are the results:
>
>
> [user@echo project]$ which python
> /usr/bin/python
> [user@echo project]$ python -V
> Python 2.7.5
So at this point start uwsgi.
Not after activation of the virtualenv. Let uwsgi activate it by itself.
Personally, I don't have these issues as uwsgi is started by root as a service, with a somewhat clean environment. I can start it as:
sudo env -i PATH=/bin:/usr/bin:/usr/local/bin \
/usr/local/etc/rc.d/uwsgi start
and it still works (and no leakage of shell env of user to wsgi requests). I'm on FreeBSD, so hence no init.d but rc.d. Principle is the same though.
--
Melvyn Sopacua
[user@echo project]$ uwsgi --http :8000 --chdir /home/user/Env/project/ --module project.wsgi --virtualenv /home/user/Env/project/projectenv/*** Starting uWSGI 2.0.15 (64bit) on [Fri Jun 2 19:54:37 2017] ***
compiled with version: 4.8.5 20150623 (Red Hat 4.8.5-11) on 30 May 2017 20:50:53os: Linux-3.10.0-514.10.2.el7.x86_64 #1 SMP Fri Mar 3 00:04:05 UTC 2017nodename: echo.commachine: x86_64clock source: unixpcre jit disableddetected number of CPU cores: 2
current working directory: /home/user/Env/projectdetected binary path: /usr/local/bin/uwsgichdir() to /home/user/Env/project/
*** WARNING: you are running uWSGI without its master process manager ***your processes number limit is 4096your memory page size is 4096 bytesdetected max file descriptor number: 1024lock engine: pthread robust mutexesthunder lock: disabled (you can enable it with --thunder-lock)uWSGI http bound on :8000 fd 4
spawned uWSGI http 1 (pid: 23477)uwsgi socket 0 bound to TCP address 127.0.0.1:38743 (port auto-assigned) fd 3
Python version: 3.6.1 (default, May 29 2017, 14:21:37) [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)]
Set PythonHome to /home/user/Env/project/projectenv/
*** Python threads support is disabled. You can enable it with --enable-threads ***
Python main interpreter initialized at 0xf2a6f0
your server socket listen backlog is limited to 100 connectionsyour mercy for graceful operations on workers is 60 secondsmapped 72768 bytes (71 KB) for 1 cores*** Operational MODE: single process ***
WSGI app 0 (mountpoint='') ready in 1 seconds on interpreter 0xf2a6f0 pid: 23476 (default app)
*** uWSGI is running in multiple interpreter mode ***
spawned uWSGI worker 1 (and the only) (pid: 23476, cores: 1)[pid: 23476|app: 0|req: 1/1] 74.70.110.103 () {40 vars in 738 bytes} [Fri Jun 2 23:55:20 2017] GET / => generated 1716 bytes in 9 msecs (HTTP/1.1 200) 3 headers in 95 bytes (1 switches on core 0)[pid: 23476|app: 0|req: 2/2] 74.70.110.103 () {40 vars in 738 bytes} [Fri Jun 2 23:55:21 2017] GET / => generated 1716 bytes in 2 msecs (HTTP/1.1 200) 3 headers in 95 bytes (1 switches on core 0)[pid: 23476|app: 0|req: 3/3] 74.70.110.103 () {38 vars in 719 bytes} [Fri Jun 2 23:55:51 2017] GET /admin/ => generated 0 bytes in 26 msecs (HTTP/1.1 302) 7 headers in 265 bytes (1 switches on core 0)[pid: 23476|app: 0|req: 4/4] 74.70.110.103 () {38 vars in 756 bytes} [Fri Jun 2 23:55:51 2017] GET /admin/login/?next=/admin/ => generated 1650 bytes in 52 msecs (HTTP/1.1 200) 7 headers in 381 bytes (1 switches on core 0)Not Found: /static/admin/css/base.css[pid: 23476|app: 0|req: 5/5] 74.70.110.103 () {40 vars in 788 bytes} [Fri Jun 2 23:55:51 2017] GET /static/admin/css/base.css => generated 2009 bytes in 7 msecs (HTTP/1.1 404) 3 headers in 102 bytes (1 switches on core 0)Not Found: /static/admin/css/login.css