I can only find portion of twisted in my python3 on OSX but complete in python2,
Some important packages missing here, such as
twisted.application
It will be the same result no matter whether by download complete package or by run pip3
python3 setup3.py install
or
sudo pip3 install twisted
$ tree -L 2 /usr/local/lib/python3.4/site-packages/twisted
/usr/local/lib/python3.4/site-packages/twisted
├── __init__.py
├── __pycache__
│ ├── __init__.cpython-34.pyc
│ ├── _version.cpython-34.pyc
│ └── copyright.cpython-34.pyc
├── _version.py
├── copyright.py
├── cred
│ ├── __init__.py
│ ├── __pycache__
│ ├── _digest.py
│ ├── credentials.py
│ ├── error.py
│ └── test
├── internet
│ ├── __init__.py
│ ├── __pycache__
│ ├── _baseprocess.py
│ ├── _glibbase.py
│ ├── _newtls.py
│ ├── _posixstdio.py
│ ├── _signals.py
│ ├── _sslverify.py
│ ├── abstract.py
│ ├── address.py
│ ├── base.py
│ ├── default.py
│ ├── defer.py
│ ├── endpoints.py
│ ├── epollreactor.py
│ ├── error.py
│ ├── fdesc.py
│ ├── gireactor.py
│ ├── gtk3reactor.py
│ ├── interfaces.py
│ ├── kqreactor.py
│ ├── main.py
│ ├── pollreactor.py
│ ├── posixbase.py
│ ├── process.py
│ ├── protocol.py
│ ├── reactor.py
│ ├── selectreactor.py
│ ├── ssl.py
│ ├── task.py
│ ├── tcp.py
│ ├── test
│ ├── threads.py
│ ├── udp.py
│ └── utils.py
├── logger
│ ├── __init__.py
│ ├── __pycache__
│ ├── _buffer.py
│ ├── _file.py
│ ├── _filter.py
│ ├── _flatten.py
│ ├── _format.py
│ ├── _global.py
│ ├── _io.py
│ ├── _json.py
│ ├── _legacy.py
│ ├── _levels.py
│ ├── _logger.py
│ ├── _observer.py
│ ├── _stdlib.py
│ ├── _util.py
│ └── test
├── names
│ ├── __init__.py
│ ├── __pycache__
│ ├── _rfc1982.py
│ ├── _version.py
│ ├── cache.py
│ ├── client.py
│ ├── common.py
│ ├── dns.py
│ ├── error.py
│ ├── hosts.py
│ ├── resolve.py
│ ├── root.py
│ └── test
├── protocols
│ ├── __init__.py
│ ├── __pycache__
│ ├── basic.py
│ ├── loopback.py
│ ├── policies.py
│ ├── test
│ └── tls.py
├── python
│ ├── __init__.py
│ ├── __pycache__
│ ├── _tzhelper.py
│ ├── compat.py
│ ├── components.py
│ ├── constants.py
│ ├── context.py
│ ├── deprecate.py
│ ├── dist.py
│ ├── dist3.py
│ ├── failure.py
│ ├── filepath.py
│ ├── lockfile.py
│ ├── log.py
│ ├── modules.py
│ ├── monkey.py
│ ├── procutils.py
│ ├── randbytes.py
│ ├── reflect.py
│ ├── runtime.py
│ ├── systemd.py
│ ├── test
│ ├── threadable.py
│ ├── threadpool.py
│ ├── urlpath.py
│ ├── usage.py
│ ├── util.py
│ ├── versions.py
│ └── win32.py
├── test
│ ├── __init__.py
│ ├── __pycache__
│ ├── iosim.py
│ ├── proto_helpers.py
│ ├── reflect_helper_IE.py
│ ├── reflect_helper_VE.py
│ ├── reflect_helper_ZDE.py
│ ├── ssl_helpers.py
│ ├── test_abstract.py
│ ├── test_compat.py
│ ├── test_context.py
│ ├── test_cooperator.py
│ ├── test_defer.py
│ ├── test_defgen.py
│ ├── test_error.py
│ ├── test_factories.py
│ ├── test_failure.py
│ ├── test_fdesc.py
│ ├── test_internet.py
│ ├── test_iosim.py
│ ├── test_iutils.py
│ ├── test_lockfile.py
│ ├── test_log.py
│ ├── test_loopback.py
│ ├── test_modules.py
│ ├── test_monkey.py
│ ├── test_paths.py
│ ├── test_policies.py
│ ├── test_process.py
│ ├── test_randbytes.py
│ ├── test_reflect.py
│ ├── test_setup.py
│ ├── test_ssl.py
│ ├── test_sslverify.py
│ ├── test_task.py
│ ├── test_tcp.py
│ ├── test_tcp_internals.py
│ ├── test_threadable.py
│ ├── test_threadpool.py
│ ├── test_threads.py
│ ├── test_twisted.py
│ ├── test_udp.py
│ ├── test_usage.py
│ └── testutils.py
├── trial
│ ├── __init__.py
│ ├── __pycache__
│ ├── _asyncrunner.py
│ ├── _asynctest.py
│ ├── _synctest.py
│ ├── itrial.py
│ ├── reporter.py
│ ├── test
│ ├── unittest.py
│ └── util.py
└── web
├── __init__.py
├── __pycache__
├── _newclient.py
├── _responses.py
├── _version.py
├── client.py
├── error.py
├── html.py
├── http.py
├── http_headers.py
├── iweb.py
├── resource.py
├── script.py
├── server.py
├── static.py
├── test
└── util.py
27 directories, 167 files
# longqi at LQMacPro.local in ~/Downloads/Twisted-15.2.1 [18:56:34]
$
Sorry. All of this is because the twisted team is still working on the porting process.
https://twistedmatrix.com/trac/wiki/Plan/Python3
Related
I'm using PyCharm and often rely on the alt+enter shortcut to automatically import classes and functions.
However, it doesn't use the absolute import path. It works fine locally but when I push to GitHub my tests fail in TravisCI.
Does anyone know a way to force PyCharm to import with the absolute path?
I need to import like this drone_squadron.api.drone_api if I use something like this api.drone_api the remote tests can't find the import. This is for all local imports.
I'd prefer for all imports to be absolute, all the time. Relative imports have caused me problems in packaging up projects. I think it's just easier to use absolute imports all the time.
Git Repo
https://github.com/sarcoma/drone_squadron_api_prototype
Tree Structure
.
├── coverage.xml
├── LICENSE.md
├── pytest.ini
├── README.md
├── requirements.txt
├── drone_squadron
│ ├── app.py
│ ├── endpoints.http
│ ├── flask.cfg
│ ├── __init__.py
│ ├── load_fixtures.py
│ ├── main.py
│ ├── router.py
│ ├── schema.py
│ ├── test_flask.cfg
│ ├── api
│ │ ├── base_api.py
│ │ ├── drone_api.py
│ │ ├── gimbal_api.py
│ │ ├── __init__.py
│ │ ├── price_api.py
│ │ ├── round_type_api.py
│ │ ├── scanner_api.py
│ │ ├── squadron_api.py
│ │ ├── steering_api.py
│ │ ├── thruster_api.py
│ │ ├── user_api.py
│ │ └── weapon_api.py
│ ├── authentication
│ │ ├── __init__.py
│ │ └── login.py
│ ├── crud
│ │ ├── base_crud.py
│ │ ├── drone_crud.py
│ │ ├── gimbal_crud.py
│ │ ├── __init__.py
│ │ ├── item_crud.py
│ │ ├── price_crud.py
│ │ ├── round_type_crud.py
│ │ ├── scanner_crud.py
│ │ ├── squadron_crud.py
│ │ ├── status_crud.py
│ │ ├── steering_crud.py
│ │ ├── thruster_crud.py
│ │ ├── user_crud.py
│ │ └── weapon_crud.py
│ ├── database
│ │ ├── database.py
│ │ ├── drones.db
│ │ ├── drones_test.db
│ │ └── __init__.py
│ ├── enums
│ │ ├── __init__.py
│ │ ├── round_type.py
│ │ └── status.py
│ ├── error
│ │ ├── error.py
│ │ └── __init__.py
│ ├── fixtures
│ │ ├── gimbal_fixtures.py
│ │ ├── __init__.py
│ │ ├── round_type_fixtures.py
│ │ ├── scanner_fixtures.py
│ │ ├── status_fixtures.py
│ │ ├── steering_fixtures.py
│ │ ├── thruster_fixtures.py
│ │ ├── user_fixtures.py
│ │ └── weapon_fixtures.py
│ ├── model
│ │ ├── base_model.py
│ │ ├── drone_model.py
│ │ ├── __init__.py
│ │ └── squadron_model.py
│ ├── request
│ │ ├── __init__.py
│ │ └── json_request_handler.py
│ ├── response
│ │ ├── __init__.py
│ │ └── json_response.py
│ ├── service
│ │ └── calculate_cost.py
│ ├── transformer
│ │ ├── __init__.py
│ │ ├── json_transformer.py
│ │ └── transformer.py
│ └── validation
│ ├── abstract
│ │ ├── __init__.py
│ │ └── validation_abstract.py
│ ├── drone_validation.py
│ ├── field.py
│ ├── __init__.py
│ ├── validation_link.py
│ └── validations.py
└── tests
├── drones_test.db
├── __init__.py
├── test_api
│ ├── conftest.py
│ ├── __init__.py
│ ├── test_auth.py
│ ├── test_drone.py
│ ├── test_gimbal.py
│ ├── test_price_list.py
│ ├── test_round_type.py
│ ├── test_scanner.py
│ ├── test_squadron.py
│ ├── test_steering.py
│ ├── test_thruster.py
│ └── test_weapon.py
└── test_crud
├── conftest.py
├── __init__.py
├── test_drone_crud.py
├── test_gimbal_crud.py
├── test_scanner_crud.py
├── test_squadron_crud.py
├── test_status_crud.py
├── test_steering_crud.py
├── test_thruster_crud.py
├── test_user_crud.py
└── test_weapon_crud.py
In Python, imports can be relative or absolute.
Absolute imports are resolved from your project's root directory:
import drone_squadron.api.drone_api
Relative imports are resolved from the current python package.
import ..api.drone
In your case, the issue is NOT a relative/absolute confusion, PyCharm always add absolute imports.
The problem is that PyCharm probably consider the folder drone_squadron in your project as a "root directory". That's wrong! The root directory is the top-level folder corresponding to the whole git project (the folder containing LICENSE.md, README.md, etc.)
In PyCharm, right click on the folder drone_squadron, then open sub-menu Mark directory as (in the bottom) then select Unmark as Source Root.
After that action, your import will be added the way you want.
I'm attempting to build a Django blog.
I have a couple of apps in there, but for some reason Gunicorn is giving me trouble with the error - ModuleNotFoundError: No module named 'blog.wsgi'
├── Procfile
├── blog
│ ├── blog
│ │ ├── __init__.py
│ │ ├── __pycache__
│ │ │ ├── __init__.cpython-36.pyc
│ │ │ ├── settings.cpython-36.pyc
│ │ │ ├── urls.cpython-36.pyc
│ │ │ └── wsgi.cpython-36.pyc
│ │ ├── settings.py
│ │ ├── urls.py
│ │ └── wsgi.py
│ ├── db.sqlite3
│ ├── manage.py
│ ├── media
│ │ ├── 1820-3-large.jpg
│ │ ├── 1820-3-large_XGHcfcZ.jpg
│ │ ├── 1820-3-large_ZTmLkYt.jpg
│ │ ├── 1820-3-large_dPbPsPW.jpg
│ │ └── paul-morris-144777.jpg
│ ├── posts
│ │ ├── __init__.py
│ │ ├── __pycache__
│ │ │ ├── __init__.cpython-36.pyc
│ │ │ ├── admin.cpython-36.pyc
│ │ │ ├── models.cpython-36.pyc
│ │ │ └── views.cpython-36.pyc
│ │ ├── admin.py
│ │ ├── apps.py
│ │ ├── migrations
│ │ │ ├── 0001_initial.py
│ │ │ ├── 0002_auto_20171217_0000.py
│ │ │ ├── __init__.py
│ │ │ └── __pycache__
│ │ │ ├── 0001_initial.cpython-36.pyc
│ │ │ ├── 0002_auto_20171217_0000.cpython-36.pyc
│ │ │ └── __init__.cpython-36.pyc
│ │ ├── models.py
│ │ ├── static
│ │ │ └── posts
│ │ │ ├── css
│ │ │ ├── img
│ │ │ │ └── home.jpg
│ │ │ └── js
│ │ ├── templates
│ │ │ └── posts
│ │ │ ├── home.html
│ │ │ └── post_details.html
│ │ ├── tests.py
│ │ └── views.py
│ └── sitepages
│ ├── __init__.py
│ ├── __pycache__
│ │ ├── __init__.cpython-36.pyc
│ │ ├── admin.cpython-36.pyc
│ │ ├── models.cpython-36.pyc
│ │ └── views.cpython-36.pyc
│ ├── admin.py
│ ├── apps.py
│ ├── migrations
│ │ ├── __init__.py
│ │ └── __pycache__
│ │ └── __init__.cpython-36.pyc
│ ├── models.py
│ ├── static
│ │ └── sitepages
│ │ ├── css
│ │ │ └── about.css
│ │ ├── img
│ │ └── js
│ ├── templates
│ │ └── sitepages
│ │ └── about.html
│ ├── tests.py
│ └── views.py
├── requirements.txt
└── venv
`
This is the bulk of my file tree as I see it. I don't see any issues, but I'm definitely overlooking something. Let me know if you'd like to see any other pieces of code.
My Procfile says -
web: gunicorn blog.wsgi --log-file -
This is my wsgi.py file -
This is wsgi.py -
import os
from django.core.wsgi import get_wsgi_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "blog.settings")
application = get_wsgi_application()
This has been driving me up the wall. I have a Django project with the following tree structure, and am trying to run python helper_scripts/load_professors_into_db.py from the root directory
load_professors_into_db.py has the following code:
## TODO: FIX THIS DAMN IMPORT PATH. THE SCRIPT DOESNT RUN CAUSE OF IT
from ocubulum_dashboard.models import Researcher
import pandas as pd
df = pd.read_csv("helper_scripts/soc_myaces_list.csv")
df = df.dropna()
df = df[~pd.isnull(df["scopus_id"])]
df = df[df["scopus_id"] != 'None']
However, it keeps trying ModuleNotFound errors. I've tried adding __init__.py files everywhere, but that doesn't work either.
Traceback (most recent call last):
File "helper_scripts/load_professors_into_db.py", line 10, in <module>
from ocubulum_dashboard.models import Researcher
ModuleNotFoundError: No module named 'ocubulum_dashboard'
The problem doesn't only occur for this. For other scripts that I want to run such as scopus_scraper.py, I face this ridiculous import issue as well.
Traceback (most recent call last):
File "data_collectors/scopus/scopus_scraper.py", line 1, in <module>
from ocubulum_dashboard.models import Researcher
ModuleNotFoundError: No module named 'ocubulum_dashboard'
Can someone point me as to how to solve this problem? I'm on python 3.6.
Entire Folder Structure:
├── data_aggregators
│ ├── myaces_aggregator.py
│ └── scopus_aggregator.py
├── data_collectors
│ ├── execute_all.py
│ ├── __init__.py
│ ├── journals
│ │ ├── __init__.py
│ │ ├── journal_scraper.py
│ │ ├── master.py
│ │ ├── __pycache__
│ │ │ └── __init__.cpython-36.pyc
│ │ └── test.json
│ ├── nus_myaces
│ │ ├── __init__.py
│ │ ├── master.py
│ │ └── __pycache__
│ │ └── __init__.cpython-36.pyc
│ ├── __pycache__
│ │ └── __init__.cpython-36.pyc
│ └── scopus
│ ├── __init__.py
│ ├── master.py
│ ├── __pycache__
│ │ └── __init__.cpython-36.pyc
│ ├── scopus_scraper.py
│ └── scopus_wrapper
│ ├── __init__.py
│ ├── __pycache__
│ │ ├── __init__.cpython-36.pyc
│ │ └── scopus_wrapper.cpython-36.pyc
│ └── scopus_wrapper.py
├── environment.yml
├── helper_scripts
│ ├── __init__.py
│ ├── load_professors_into_db.py
│ ├── __pycache__
│ │ └── __init__.cpython-36.pyc
│ └── soc_myaces_list.csv
├── __init__.py
├── manage.py
├── ocubulum
│ ├── __init__.py
│ ├── __pycache__
│ │ ├── __init__.cpython-36.pyc
│ │ ├── settings.cpython-36.pyc
│ │ ├── settings_development.cpython-36.pyc
│ │ ├── urls.cpython-36.pyc
│ │ ├── views.cpython-36.pyc
│ │ └── wsgi.cpython-36.pyc
│ ├── settings_development.py
│ ├── settings.py
│ ├── static
│ ├── urls.py
│ ├── views.py
│ └── wsgi.py
├── ocubulum_dashboard
│ ├── admin.py
│ ├── apps.py
│ ├── __init__.py
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── __init__.py
│ │ └── __pycache__
│ │ ├── 0001_initial.cpython-36.pyc
│ │ └── __init__.cpython-36.pyc
│ ├── models.py
│ ├── __pycache__
│ │ ├── admin.cpython-36.pyc
│ │ ├── apps.cpython-36.pyc
│ │ ├── __init__.cpython-36.pyc
│ │ ├── models.cpython-36.pyc
│ │ ├── tests.cpython-36.pyc
│ │ └── views.cpython-36.pyc
│ ├── static
│ │ ├── css
│ │ │ ├── custom.css
│ │ │ └── side-menu.css
│ │ ├── img
│ │ │ └── logo.png
│ │ └── js
│ │ └── ui.js
│ ├── templates
│ │ └── ocubulum
│ │ ├── dashboard.html
│ │ └── layout.html
│ ├── tests.py
│ └── views.py
├── Procfile
├── __pycache__
│ └── __init__.cpython-36.pyc
├── README.md
├── requirements.txt
└── runtime.txt
Try from ..ocubulum_dashboard.models import Researcher.
Or add the folder containing ocubulum_dashboard to your PYTHONPATH.
I am new in Python \ Django and I have some question about settings environment. I use git for edit my project and on server I have production project. But when I edit project on local machine I have my own settings(DATABASE) so if I pull edited project on server I need to change my settings, so I want to set DJANGO_SETTINGS_MODULE, but I don't know what path I must set and where I must allocate my default setting.
This is my hierarchy:
wow
├── core
│ ├── admin.py
│ ├── api_views.py
│ ├── apps.py
│ ├── __init__.py
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── __init__.py
│ │ └── __pycache__
│ ├── models.py
│ ├── __pycache__
│ │ ├── admin.cpython-35.pyc
│ │ ├── api_views.cpython-35.pyc
│ │ ├── __init__.cpython-35.pyc
│ │ ├── models.cpython-35.pyc
│ │ ├── sitemap.cpython-35.pyc
│ │ ├── urls.cpython-35.pyc
│ │ └── views.cpython-35.pyc
│ ├── sitemap.py
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── manage.py
├── media
│ └── core
│ ├── iUcZCekdW68_FrqsEHv.jpg
│ ├── iUcZCekdW68.jpg
│ ├── qWI5I5NuIeg.jpg
│ ├── server1.png
│ └── server2.png
├── not_found
│ ├── admin.py
│ ├── apps.py
│ ├── __init__.py
│ ├── migrations
│ │ ├── __init__.py
│ │ └── __pycache__
│ ├── models.py
│ ├── __pycache__
│ │ ├── admin.cpython-35.pyc
│ │ ├── __init__.cpython-35.pyc
│ │ ├── models.cpython-35.pyc
│ │ ├── urls.cpython-35.pyc
│ │ └── views.cpython-35.pyc
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── requirements.txt
├── settings.py
├── static
│ ├── admin
│ │ ├── css
│ │ ├── fonts
│ │ ├── img
│ │ └── js
│ └── core
│ ├── css
│ ├── img
│ └── js
├── staticfiles
│ ├── admin
│ │ ├── css
│ │ ├── fonts
│ │ ├── img
│ │ └── js
│ └── core
│ ├── css
│ ├── img
│ └── js
├── templates
│ ├── 404.html
│ ├── admin
│ │ ├── base.html
│ │ ├── base_site.html
│ │ └── index.html
│ ├── character.html
│ ├── characters.html
│ ├── checkout.html
│ ├── index.html
│ └── server.html
├── url.xml
└── wow
├── gunicorn.conf.py
├── __init__.py
├── __pycache__
│ ├── __init__.cpython-35.pyc
│ ├── settings.cpython-35.pyc
│ ├── urls.cpython-35.pyc
│ └── wsgi.cpython-35.pyc
├── settings.py
├── urls.py
├── views.py
└── wsgi.py
What i must do, end where i must write os.environ["DJANGO_SETTINGS_MODULE"] = wow.settings, or something like this?
I have configured a linode server with apache2 and mod_wsgi..
the server is running
wsgi is running
postgre is running and syncdb was successful
what I am having trouble finishing is actually serving the app..
my file structure:
.
├── logfile
└── srv
├── logfile
└── www
└── quickerhub.com
├── admin
│ ├── css
│ │ ├── base.css
│ │ ├── changelists.css
│ │ ├── dashboard.css
│ │ ├── forms.css
│ │ ├── ie.css
│ │ ├── login.css
│ │ ├── rtl.css
│ │ └── widgets.css
│ ├── img
│ │ ├── changelist-bg.gif
│ │ ├── changelist-bg_rtl.gif
│ │ ├── chooser-bg.gif
│ │ ├── chooser_stacked-bg.gif
│ │ ├── default-bg.gif
│ │ ├── default-bg-reverse.gif
│ │ ├── deleted-overlay.gif
│ │ ├── gis
│ │ │ ├── move_vertex_off.png
│ │ │ └── move_vertex_on.png
│ │ ├── icon_addlink.gif
│ │ ├── icon_alert.gif
│ │ ├── icon_calendar.gif
│ │ ├── icon_changelink.gif
│ │ ├── icon_clock.gif
│ │ ├── icon_deletelink.gif
│ │ ├── icon_error.gif
│ │ ├── icon-no.gif
│ │ ├── icon_searchbox.png
│ │ ├── icon_success.gif
│ │ ├── icon-unknown.gif
│ │ ├── icon-yes.gif
│ │ ├── inline-delete-8bit.png
│ │ ├── inline-delete.png
│ │ ├── inline-restore-8bit.png
│ │ ├── inline-restore.png
│ │ ├── inline-splitter-bg.gif
│ │ ├── nav-bg.gif
│ │ ├── nav-bg-grabber.gif
│ │ ├── nav-bg-reverse.gif
│ │ ├── nav-bg-selected.gif
│ │ ├── selector-icons.gif
│ │ ├── selector-search.gif
│ │ ├── sorting-icons.gif
│ │ ├── tool-left.gif
│ │ ├── tool-left_over.gif
│ │ ├── tool-right.gif
│ │ ├── tool-right_over.gif
│ │ ├── tooltag-add.gif
│ │ ├── tooltag-add_over.gif
│ │ ├── tooltag-arrowright.gif
│ │ └── tooltag-arrowright_over.gif
│ └── js
│ ├── actions.js
│ ├── actions.min.js
│ ├── admin
│ │ ├── DateTimeShortcuts.js
│ │ ├── ordering.js
│ │ └── RelatedObjectLookups.js
│ ├── calendar.js
│ ├── collapse.js
│ ├── collapse.min.js
│ ├── core.js
│ ├── getElementsBySelector.js
│ ├── inlines.js
│ ├── inlines.min.js
│ ├── jquery.init.js
│ ├── jquery.js
│ ├── jquery.min.js
│ ├── LICENSE-JQUERY.txt
│ ├── prepopulate.js
│ ├── prepopulate.min.js
│ ├── SelectBox.js
│ ├── SelectFilter2.js
│ ├── timeparse.js
│ └── urlify.js
├── interest
│ ├── django.wsgi
│ ├── __init__.py
│ ├── __init__.pyc
│ ├── settings.py
│ ├── settings.pyc
│ ├── urls.py
│ └── wsgi.py
├── js
│ └── jquery-1.10.1.min.js
├── logfile
├── manage.py
├── README
├── reoccurring
│ ├── admin.py
│ ├── forms.py
│ ├── __init__.py
│ ├── __init__.pyc
│ ├── models.py
│ ├── models.pyc
│ ├── usagelib.py
│ └── views.py
├── schedule
│ ├── admin.py
│ ├── __init__.py
│ ├── __init__.pyc
│ ├── models.py
│ ├── models.pyc
│ ├── tests.py
│ ├── usagelib.py
│ └── views.py
├── src
│ ├── facebooksdk
│ │ ├── examples
│ │ │ ├── appengine
│ │ │ │ ├── app.yaml
│ │ │ │ ├── example.html
│ │ │ │ └── example.py
│ │ │ ├── newsfeed
│ │ │ │ ├── app.yaml
│ │ │ │ ├── facebookclient.py
│ │ │ │ ├── static
│ │ │ │ │ ├── base.css
│ │ │ │ │ ├── favicon.ico
│ │ │ │ │ └── robots.txt
│ │ │ │ └── templates
│ │ │ │ ├── base.html
│ │ │ │ ├── home.html
│ │ │ │ └── index.html
│ │ │ ├── oauth
│ │ │ │ ├── app.yaml
│ │ │ │ ├── facebookoauth.py
│ │ │ │ └── oauth.html
│ │ │ └── tornado
│ │ │ ├── example.html
│ │ │ ├── example.py
│ │ │ └── schema.sql
│ │ ├── facebook.py
│ │ ├── facebook_sdk.egg-info
│ │ │ ├── dependency_links.txt
│ │ │ ├── PKG-INFO
│ │ │ ├── SOURCES.txt
│ │ │ └── top_level.txt
│ │ ├── MANIFEST.in
│ │ ├── README.rst
│ │ └── setup.py
│ └── pip-delete-this-directory.txt
├── static
│ └── js
│ └── jquery-1.10.1.min.js
├── templates
│ ├── 404.html
│ ├── 500.html
│ ├── Base.html
│ ├── Home.html
│ ├── Reoccurring.html
│ └── Usersettings.html
└── usersetting
├── admin.py
├── __init__.py
├── __init__.pyc
├── models.py
├── models.pyc
└── views.py
my django.wsgi:
import os
import sys
sys.path.append('/srv/www/quickerhub.com/')
os.environ['PYTHON_EGG_CACHE'] = '/srv/www/quickerhub.com.python-egg'
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
my httpd.conf:
my sites-enabled/quickerhub.com:
WSGIPythonPath /srv/www/quickerhub.com
<VirtualHost *:80>
ServerName quickerhub.com
Alias /static/ /srv/www/quickerhub.com/interest/static/
WSGIScriptAlias / /srv/www/quickerhub.com/interest/django.wsgi
<Directory />
AllowOverride None
Options -Indexes
</Directory>
</VirtualHost>
I feel like everything is pointing to the correct stuff...
EDIT:
Now just getting a 404 file not found
Please help!
Thanks!
I just setup my site www.noobniche.com on Linode using WSGI. Unfortunately I'm not at home to compare my setup, if you're still having problems tonight I can look into it. From memory in my case, I had to enable by adding to sites-enabled and sites-available.
the structure should look something similar to this;
webapps(root directory)
nichesite
static
django_project_name
--> myproject.wsgi
--> settings.py
--> urls.py
--> views.py
manage.py
it seems your .wsgi file is located in your root directory, when it should be located within your django project folder.
So it looks as if you have conflicting settings for WSGIScriptAlias - one in httpd.conf, pointing to the right path for your wsgi file, and one in your sites-enabled file, pointing to the wrong path (/var/ instead of /srv/).
You should remove the one in httpd.conf and move it to sites-enabled/quickerhub.com so that the version there is correctly pointing to /srv/.