Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
部署django项目没有结果_Django_Apache_Web Deployment - Fatal编程技术网

部署django项目没有结果

部署django项目没有结果,django,apache,web-deployment,Django,Apache,Web Deployment,现在已经在谷歌上搜索了很多,并且遵循了django文档。。还是不行,但我想我已经很接近了。。我知道有很多关于这方面的信息,但即使我尝试了一些指南,它仍然不起作用,我想我已经测试了其他主题中建议的大部分内容 我正在尝试在我的服务器上部署我的django站点,该站点在开发模式下工作(从shell)。因此,在运行python manage.py runserver时没有问题,但在尝试让apache2服务器运行django时,首先我得到了“请求的URL/在此服务器上找不到”,现在我进入了apache的e

现在已经在谷歌上搜索了很多,并且遵循了django文档。。还是不行,但我想我已经很接近了。。我知道有很多关于这方面的信息,但即使我尝试了一些指南,它仍然不起作用,我想我已经测试了其他主题中建议的大部分内容

我正在尝试在我的服务器上部署我的django站点,该站点在开发模式下工作(从shell)。因此,在运行python manage.py runserver时没有问题,但在尝试让apache2服务器运行django时,首先我得到了“请求的URL/在此服务器上找不到”,现在我进入了apache的error.log:

[client 192.168.1.49] mod_wsgi (pid=5606): Exception occurred processing WSGI script '/home/Webmod/www/djangojquerycontroller/Server/Server/wsgi.py'.
[client 192.168.1.49] Traceback (most recent call last):
[client 192.168.1.49]   File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/wsgi.py", line 236, in __call__
[client 192.168.1.49]     self.load_middleware()
[client 192.168.1.49]   File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 45, in load_middleware
[client 192.168.1.49]     for middleware_path in settings.MIDDLEWARE_CLASSES:
[client 192.168.1.49]   File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 53, in __getattr__
[client 192.168.1.49]     self._setup(name)
[client 192.168.1.49]   File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 48, in _setup
[client 192.168.1.49]     self._wrapped = Settings(settings_module)
[client 192.168.1.49]   File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 134, in __init__
[client 192.168.1.49]     raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % (self.SETTINGS_MODULE, e))
[client 192.168.1.49] ImportError: Could not import settings 'Server.settings' (Is it on sys.path?): No module named Server.settings
所以我已经安装了中提到的所有东西

首先,我的网站位于:/home/Webmod/www/djangojquerycontroller/Server

(站点的名称是Server…)下面是模板、静态和媒体文件夹以及执行大部分工作的app dataManager。 在/home/Webmod/www/djangojquerycontroller/Server/Server文件夹中,我们发现:

django.wsgi:(这个文件我必须手动创建,不知道是否可以正常工作..)

wsgi.py:(我可以从这个文件中写入错误消息,所以这个文件正在运行(!)

settings.py:

然后,我在/etc/apache2中尝试了两个版本的https.conf:

Alias /static/ /home/Webmod/www/djangojquerycontroller/Server/static/

<Directory /home/Webmod/www/djangojquerycontroller/Server/static>
    Order deny,allow
    Allow from all
</Directory>

WSGIScriptAlias / /home/Webmod/www/djangojquerycontroller/Server/Server/django.wsgi

<Directory /usr/local/django/mysite/apache>
    Order deny,allow
    Allow from all
</Directory>
Alias/static//home/Webmod/www/djangojquerycontroller/Server/static/
命令拒绝,允许
通融
WSGIScriptAlias//home/Webmod/www/djangojquerycontroller/Server/Server/django.wsgi
命令拒绝,允许
通融
第二次测试:

WSGIScriptAlias//home/Webmod/www/djangojquerycontroller/Server/Server/wsgi.py
WSGIPythonPath/home/Webmod/www/djangojquerycontroller:/usr/local/lib/python2.7/dist-packages/django
SetHandler python程序
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_设置_模块服务器.SETTINGS
PythonOption django.root/Server
PythonPath“['/home/Webmod/www/djangojquerycontroller/”、'/home/Webmod/www/djangojquerycontroller/Server'、'/home/Webmod/www/djangojquerycontroller/Server/dataManager'、'/home/Webmod/www/djangojquerycontroller/']+sys.path”
蟒蛇
/etc/apache2/sites available/django.conf


WSGIScriptAlias//home/Webmod/www/djangojquerycontroller/Server/Server/wsgi.py
服务器名本地主机
别名/media//home/Webmod/www/djangojquerycontroller/Server/static/
别名/static//home/Webmod/www/djangojquerycontroller/Server/static/
命令允许,拒绝
通融
所以问题是,这有什么问题?为什么apache不能按预期运行这个东西。。如果可能的话,我可以复制粘贴一些很酷的终端突击队,这将是真正的史诗般的,然后它就像魔术一样工作!=)


任何解决这个问题的想法都会非常好

只需添加settings.py文件所在位置的路径,然后将环境变量设置为
settings
。对wsgi文件进行以下更改

sys.path.append('/home/Wedmod/www/djangojquerycontroller/Server')
os.environ["DJANGO_SETTINGS_MODULE"]="settings"

您好,谢谢您的提示购买实际上我已经在wsgi.py中有了它,但是我使用了
os.environ.setdefault(“DJANGO\u SETTINGS\u MODULE”,“Server.SETTINGS”)
现在尝试了您的行,但它不起作用。但是sys.path.append部分已经完成,如果我打印sys.path,它看起来不错。这仍然没有解决。。有人有什么想法吗?谢谢
import warnings
import exceptions
# PROJECT_ROOT = os.path.realpath(os.path.dirname(__file__))
warnings.filterwarnings("ignore", category=exceptions.RuntimeWarning,  module='django.db.backends.sqlite3', lineno=50)

DEBUG = True
TEMPLATE_DEBUG = DEBUG

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',  # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': '/home/Webmod/www/djangojquerycontroller/Server/Server/db/database',  # Or path to database file if using sqlite3.
        # The following settings are not used with sqlite3:
        'USER': '',
        'PASSWORD': '',
        'HOST': '',                      # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP.
        'PORT': '',                      # Set to empty string for default.
    }
}

ALLOWED_HOSTS = []

TIME_ZONE = 'Europe/Stockholm'

LANGUAGE_CODE = 'en-us'

SITE_ID = 1

USE_I18N = True

USE_L10N = True

USE_TZ = True

MEDIA_ROOT = '/home/Webmod/www/djangojquerycontroller/Server/media' 

MEDIA_URL = 'media/'

FILE_UPLOAD_PERMISSIONS = 755

STATIC_ROOT = '/home/Webmod/www/djangojquerycontroller/Server/static'  

STATIC_URL = '/static/'

STATICFILES_DIRS = (
    '/home/Webmod/www/djangojquerycontroller/Server/static/',
)

STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder',
    'django.contrib.staticfiles.finders.AppDirectoriesFinder',
    'django.contrib.staticfiles.finders.FileSystemFinder',
    'django.contrib.staticfiles.finders.AppDirectoriesFinder',
    #'django.contrib.staticfiles.finders.DefaultStorageFinder',
)

ADMIN_MEDIA_PREFIX = '/admin_media/'

# List of callables that know how to import templates from various sources.
TEMPLATE_LOADERS = (
    'django.template.loaders.filesystem.Loader',
    'django.template.loaders.app_directories.Loader',
    #'django.template.loaders.eggs.Loader',
)

MIDDLEWARE_CLASSES = (
    'django.middleware.common.CommonMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
)

ROOT_URLCONF = 'Server.urls'

# Python dotted path to the WSGI application used by Django's runserver.
WSGI_APPLICATION = 'Server.wsgi.application'

TEMPLATE_DIRS = (
    '/home/Webmod/www/djangojquerycontroller/Server/templates',
)

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'dataManager',
    'django.contrib.admin',
    'django.contrib.admindocs',
    'django_evolution',
)

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'filters': {
        'require_debug_false': {
            '()': 'django.utils.log.RequireDebugFalse'
        }
    },
    'handlers': {
        'mail_admins': {
            'level': 'ERROR',
            'filters': ['require_debug_false'],
            'class': 'django.utils.log.AdminEmailHandler'
        }
    },
    'loggers': {
        'django.request': {
            'handlers': ['mail_admins'],
            'level': 'ERROR',
            'propagate': True,
        },
    }
}
Alias /static/ /home/Webmod/www/djangojquerycontroller/Server/static/

<Directory /home/Webmod/www/djangojquerycontroller/Server/static>
    Order deny,allow
    Allow from all
</Directory>

WSGIScriptAlias / /home/Webmod/www/djangojquerycontroller/Server/Server/django.wsgi

<Directory /usr/local/django/mysite/apache>
    Order deny,allow
    Allow from all
</Directory>
WSGIScriptAlias / /home/Webmod/www/djangojquerycontroller/Server/Server/wsgi.py
WSGIPythonPath /home/Webmod/www/djangojquerycontroller:/usr/local/lib/python2.7/dist-packages/django
<Location "/Server">
    SetHandler python-program
    PythonHandler django.core.handlers.modpython
    SetEnv DJANGO_SETTINGS_MODULE Server.settings
    PythonOption django.root /Server
    PythonPath "['/home/Webmod/www/djangojquerycontroller/',     '/home/Webmod/www/djangojquerycontroller/Server','/home/Webmod/www/djangojquerycontroller/Server/dataManager', '/home/Webmod/www/djangojquerycontroller/'] + sys.path"
    PythonDebug On
</Location>
<VirtualHost *:80>

WSGIScriptAlias / /home/Webmod/www/djangojquerycontroller/Server/Server/wsgi.py

ServerName localhost

Alias /media/ /home/Webmod/www/djangojquerycontroller/Server/static/
Alias /static/ /home/Webmod/www/djangojquerycontroller/Server/static/

<Directory /home/Webmod/www/djangojquerycontroller/Server/>
Order allow,deny
Allow from all
</Directory>

</VirtualHost>
sys.path.append('/home/Wedmod/www/djangojquerycontroller/Server')
os.environ["DJANGO_SETTINGS_MODULE"]="settings"