这是我在heroku上推送的目录结构:

anon@ubuntu:~/projects/heroku$ ls -l
total 32
drwxrwxr-x 6 anon anon  4096 Dec 25 21:10 env
-rwxrwxr-x 1 anon anon  2404 Dec 30 02:39 myapp.py
-rw-rw-r-- 1 anon anon    21 Dec 25 23:11 Procfile
-rw-rw-r-- 1 anon anon   124 Dec 25 21:11 requirements.txt
-rw-rw-r-- 1 anon anon 13490 Dec 29 16:32 image.jpg


调用时返回的myapp.py中的html如下:

<!DOCTYPE html>
<head>
    <title>My App</title>
</head>

<body>
    <div id="content_wrapper">
        <div id="logo">
            <img src="image.jpg" alt="Logo" />
        </div>
        <form action="/process" method="post">
            <input type="search" name="q" size="40" maxlength="200" placeholder="Enter your query...">
            <input type="submit" value="Search">
        </form>
    </div>
</body>
</html>


图像image.jpg未加载(损坏)。我究竟做错了什么?

最佳答案

以我的经验,Heroku不喜欢持久性文件,因为它在云中操作您的服务器。因此,我尽量不要在您的Heroku存储库中直接包含image.jpg文件。而是将映像托管在AWS(Amazon Web Services)上,并在标记中引用它。

This tutorial解释了如何做到这一点。

(可能有某种方法可以说服Heroku接受您的图像文件。但是,我仍然会尝试迁移到AWS。

09-12 15:03