2015-01-30 2 views
0

Я пытаюсь разместить свой проект на нашей школьной странице. Я использовал флеш-фреймворк для создания веб-приложения, которое выполняется на моем локальном хосте. Чтобы запустить его в Интернете, мне было рекомендовано поместить все файлы из проекта в мою школьную папку www.xxx.com/projects/myproject в папку public_html, из которой Apache сервер должен прочитать файлы. Я сделал скопируйте + вставьте все файлы из моего проекта в папку myproject. Теперь, когда я пытаюсь запустить его на удаленном школьном компьютере, он работает правильно - при запуске app.py он возвращает Running on http://127.0.0.1:5000/. Но затем я проверяю страницу, где должна отображаться html-страница, она показывает только файлы проекта, а не html.Поместите приложение Python на удаленный сервер

Что мне делать, чтобы заставить его работать?

PS: Я пытаюсь проверить страницу через Интернет.

# -*- coding: utf-8 -*- 

from flask import render_template 
from flask import Flask 
from flask import request 
import S 
import B 

app = Flask(__name__) 

@app.route('/') 
def my_form(): 
    return render_template('my-form.html') 

def setup(): 
    global b 
    b = B.B() 


@app.route('/', methods=['POST']) 
def search(): 

    pattern = request.form['text'] 

    startTime = time() 

    arr = [] 

    s = S.S(pattern,b) 
    res = s.getR() 

    for k in res: 
     t = b.find(k) 
     for key in t.keys(): 
      string = str(key) 
      arr.append(string.decode('utf-8')) 

    return render_template('my-form.html', arr=arr, pattern=pattern) 

app.debug=False 
if __name__ == '__main__': 
    setup() 
    app.run() 

PS: У меня нет index.html в любом месте, я полагаю, что он должен оказывать 'мой-form.html' и показать его.

+0

Вы должны действительно начать с документацией о том, как развернуть приложение Python (начало поиск с помощью «wsgi»). Apache не выполняет ваше приложение прямо сейчас, он просто служит для файлов (потому что это файловый сервер). Вам нужно либо настроить Apache на использование 'mod_wsgi' для выполнения вашего приложения, либо прокси-сервера входящего трафика в ваше приложение (конечно, вы можете использовать для этого другой веб-сервер). Кроме того, вы можете открыть приложение прямо в Интернете (привязать к «0.0.0.0» вместо «127.0.0.1», обходя Apache вообще (но я бы не рекомендовал этого). –

ответ

0

На сервере вашей школы (поддержка питона):

sudo apt-get install libapache2-mod-wsgi

также необходимо проверять разрешения для файлов в public_html.

проблема, возможно, является недостающим типом контента в заголовке HTTP

«Content-Type: текст/html \ п \ п»