gpt4 book ai didi

python - 无法在 CPanel 上上传媒体文件(使用 django)

转载 作者:行者123 更新时间:2023-12-03 16:10:43 24 4
gpt4 key购买 nike

我无法在 Cpanel 上上传我的媒体文件。最初我能够上传文件,但现在它显示错误 404 URL Not Found。
我的代码或我的 url 没有任何问题,因为它在本地主机上运行良好。
我已经在我的 CPanel 文件管理器(它的 0755)中检查了目录的权限。
我已指定 + 静态(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)在我的 urls.py 文件中。
我的 settings.py 是:

MEDIA_ROOT = '/my/path/public_html/media'
MEDIA_URL = '/media/'
我正在使用 Django=2.1 和 CPanel 共享主机
我知道建议在生产环境中使用 Web 服务器来存储和提供媒体文件,但是如果我得到此错误的解决方案会很有帮助。

最佳答案

将此代码添加到 乘客_wsgi.py 文件并在第 4 行更改 project_name:

import os
import sys
sys.path.append(os.getcwd())
os.environ['DJANGO_SETTINGS_MODULE'] = 'project_name.settings'
import django.core.handlers.wsgi
from django.core.wsgi import get_wsgi_application
SCRIPT_NAME = os.getcwd()
class PassengerPathInfoFix(object):
def __init__(self, app):
self.app = app
def __call__(self, environ, start_response):
from urllib.parse import unquote
environ['SCRIPT_NAME'] = SCRIPT_NAME
request_uri = unquote(environ['REQUEST_URI'])
script_name = unquote(environ.get('SCRIPT_NAME', ''))
offset = request_uri.startswith(script_name) and len(environ['SCRIPT_NAME']) or 0
environ['PATH_INFO'] = request_uri[offset:].split('?', 1)[0]
return self.app(environ, start_response)
application = get_wsgi_application()
application = PassengerPathInfoFix(application)
更多:去 here

关于python - 无法在 CPanel 上上传媒体文件(使用 django),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63328969/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com