Django部署人员的文件映射

2024-04-19 01:16:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经敲定了我的第一个Django网站的教程后,在官方Django网站,与谷歌的方式很多。该网站将允许我上传图像(存储在“媒体”文件夹下)并显示它们。它在firefox本地运行良好。现在我被困在如何部署它。我主要遵循instructions on flailingmonkey.com尝试在justhost上设置生产环境。我根据this page by the author of "Two Scoops of Django"修改了设置并重新组织了文件夹。我的本地文件结构如下所示。你知道吗

C:\django_projects
    +---< my_project >
    |    +---< my_project >
    |    |    |--- settings.py
    |    |    |--- urls.py
    |    |    |--- wsgi.py
    |    |    |--- __init__.py
    |    |
    |    +---< my_app >
    |         +---< static >
    |         |    +---< my_app >
    |         |         +---< css >
    |         |         |    |--- style.css
    |         |         +---< script >
    |         |              |--- my_javascript.js
    |         +---< templates >
    |         +---< migrations >
    |         +---< __pycache__ >
    |         |--- admin.py
    |         |--- urls.py
    |         |--- models.py
    |         |--- views.py
    |         |--- __init__.py
    |    
    +---\assets
    |    +---< admin >
    |    +---< my_app >
    |         +---< css >
    |         |    |--- style.css
    |         +---< script >
    |              |--- my_javascript.js
    |
    +---\static
    |
    +---\media

据我所知,在部署之前,我应该使用'collectstatic'来收集所有静态文件(css、脚本),我已经执行了这些操作(反映在文件夹结构中)。你知道吗

上一次我做web开发是在10年前,我记得过去我要做的就是把所有东西都放到public\u html文件夹下。就Django dev而言,有什么不同吗?我是否应该将上面的四个文件夹(即“我的\u项目”、“资产”、“静态”、“媒体”)ftp到公共\u html到远程服务器?或者我应该用ftp将整个“django\u projects”文件夹转移到ftp吗?我是否需要放置包含设置.py,在“public\u html”之外的某个地方?“资产”和“媒体”文件夹怎么样?你知道吗

关于flailingmonkey.com未明确说明项目文件夹和应用程序文件夹的位置。我已经盲目尝试了3天,一直在与静态文件无法提供斗争。我没有尝试将所有内容都放在public\u html下,因为在我看来,将包含数据库凭据的设置文件放在那里是不安全的做法。请告知。你知道吗

对你们大多数人来说,这可能是个愚蠢的问题。谢谢你耐心地阅读这么冗长的问题。我正在尽可能把这件事说清楚。你知道吗

除了写.htaccess我的_应用fcgi文件按照说明,我可以考虑更改中的“调试”设置.py到“False”。部署还缺少什么吗?你知道吗


Tags: 文件djangopy文件夹app网站my部署
1条回答
网友
1楼 · 发布于 2024-04-19 01:16:49

您不会将django项目放入公共html中。通常,Django会与modëwsgi(Apache)或uWSGI(nginx)通信,并使用wsgi协议将动态内容提供给服务器进程。静态内容(图像、javascript等)通常映射到服务器端目录。你知道吗

我建议您阅读Django项目页面上的部署页面:https://docs.djangoproject.com/en/1.8/howto/deployment/wsgi/modwsgi/

相关问题 更多 >