2015-10-14 109 views
0

這一切都在我的本地服務器上運行,但是當其他人試圖部署我對服務器所做的操作時,它會失敗。無法獲取Flas中靜態文件夾下的js文件

文件系統是服務器一樣的東西:

SERVER_FOLDER 
    --homepage 
    ----static 
    ----templates 
    ------404.html 
    ----app.py 
    ----config.py 

例如:服務器:MY_SERVER

,然後在我的app.py,我用

@app.route('/homepage/') 
@app.route('/homepage/index') 
def index(): 
    # TODO 

定義主頁和@app.errorhandler(404)將所有未找到的頁面重定向到404.html

所以我可以訪問我的主頁http://MY_SERVER/homepage/,有點不同於我的本地服務器。這是我困惑的一件事。

我認爲app.py運行在MY_SERVER而不是MY_SERVER/homepage對不對?

但是,通過這種方式,當我在模板文件中運行模板時,html模板文件將使用static文件夾下的js文件。響應始終顯示找不到js文件。

    當我使用 <script src="{{ url_for('static', filename='file.js') }}"></script>
  1. ,那就說明不是MY_SERVER/static發現並返回404
  2. 當我嘗試<script src="../homepage/static/file.js"></script>,相同的結果。

如何處理?

回答

0

建立對您的解決方案:

  1. 獲取燒瓶從靜態

    服務的圖像文件將圖像中的靜態目錄,並從瀏覽器中調用它:http://yoursite/static/some_image_there.jpg

    插頭時,直到作品。

  2. 獲取瓶直接服務的js文件到你的瀏覽器

    現在把你的JS文件爲靜態的,像你一樣的圖像。 插頭離開,直到你可以從瀏覽器中調用它: http://yoursite/static/yourfile.js

  3. 讓你的HTML調用從靜態

    現在的js文件,你知道,有實際投放的文件沒問題,你知道的確切的網址。因此,讓HTML引用它和瀏覽器來加載它並不是一個很大的步驟。