Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.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
Python Apache和共享介质在一个单独的目录中_Python_Django_Apache_Mod Wsgi - Fatal编程技术网

Python Apache和共享介质在一个单独的目录中

Python Apache和共享介质在一个单独的目录中,python,django,apache,mod-wsgi,Python,Django,Apache,Mod Wsgi,我正在构建一个django应用程序,该应用程序在我的/Users/me/Dropbox目录下运行 Localhost指向my/Users/me/Sites目录 安装了mod_wsgi。 apache已安装 django已安装且应用程序在开发模式下运行良好 我正在尝试在模板中嵌入媒体 此媒体来自django应用程序之外的目录-在机器根目录中-/PROYECTOS 目录和前面目录的权限可通过www读取 我想我明白这一点 mod_wsgi将为动态文件提供服务 apache将提供静态文件,如css和模

我正在构建一个django应用程序,该应用程序在我的/Users/me/Dropbox目录下运行

Localhost指向my/Users/me/Sites目录

安装了mod_wsgi。 apache已安装 django已安装且应用程序在开发模式下运行良好

我正在尝试在模板中嵌入媒体 此媒体来自django应用程序之外的目录-在机器根目录中-/PROYECTOS

目录和前面目录的权限可通过www读取

我想我明白这一点

  • mod_wsgi将为动态文件提供服务
  • apache将提供静态文件,如css和模板文件,以及我在/PROYECTOS目录中引用的媒体文件
我的settings.py中有以下内容:

STATICFILES_DIRS = (os.path.join(BASE, "static"), )
STATIC_URL = "/static/"
MEDIA_URL = "/PROYECTOS/"
WSGI_APPLICATION = 'mbrain.wsgi.application'
在/etc/apache2/extra/vhosts/localhost.conf中,我有:

<VirtualHost *:80>

DocumentRoot "/Users/me/Sites/localhost"
ServerName localhost

WSGIDaemonProcess localhost python-path=/Users/me/Dropbox/mBrain_Adam/mbrain/:/Users/me/Dropbox/mBrain_Adam/mbrain/venv/include/python2.7
WSGIProcessGroup localhost

Alias /proyectos/ /PROYECTOS/

<Directory /PROYECTOS>
    Require all granted
</Directory>

WSGIScriptAlias / /Users/me/Dropbox/mBrain_Adam/mbrain/mbrain/wsgi.py

<Directory /Users/me/Dropbox/mBrain_Adam/mbrain/mbrain>
    <Files wsgi.py>
    Require all granted
    </Files>
</Directory>

DocumentRoot“/Users/me/Sites/localhost”
服务器名本地主机
WSGIDaemonProcess localhost python path=/Users/me/Dropbox/mBrain_Adam/mBrain/:/Users/me/Dropbox/mBrain_Adam/mBrain/venv/include/python2.7
WSGIProcessGroup本地主机
别名/proyectos//proyectos/
要求所有授权
WSGIScriptAlias//Users/me/Dropbox/mBrain_Adam/mBrain/mBrain/wsgi.py
要求所有授权

因此,要在模板中嵌入媒体文件,我使用以下url: {{MEDIA_URL}{{asset.assetPath}}

当我在浏览器中加载页面时,控制台显示媒体资产的完全扩展路径,但出现404错误-HTTP/1.1“404 3045

我非常感谢任何关于我是否以正确的方式处理这个问题或者我是否完全错过了这个概念的反馈。 此外,任何关于404错误的帮助都将不胜感激

干杯


Adam

删除尾部斜杠是否有效?
Alias/proyectos/proyectos

我会试一试,但我认为任何额外的斜杠都不重要。谢谢!不幸的是,这没有任何效果。