2017-04-08 9 views
0

나는 Raspberry Pi를 사용하는 소규모 대학 프로젝트를 진행하고 있습니다. 기본적으로이 프로젝트는 Pi 인터페이스에 연결된 센서를 제어하기위한 html 인터페이스를 제공합니다. 나는 아주 간단한 html 코드로 첨부 된 아주 간단한 파이썬 코드를 작성했다. 모든 것은이 경로/var/www/NewTest에서 수행됩니다. 그러나 액세스 할 때마다 500 개의 내부 오류가 발생합니다. 나는 나와 함께 일한이 "Hello World"예제를 시도해 보았지만 같은 방법으로이 예제를 시도했지만 작동하지 않았다.Flask와 Apache를 사용할 때의 내부 오류 500

led.py

from gpiozero import LED 
from time import sleep 
from flask import Flask, render_template 
app = Flask(__name__) 

ledr = LED(17) 
ledg = LED(27) 
ledb = LED(22) 


@app.route('/') 
def index(): 
    return render_template('index.html') 

@app.route('/red/') 
def red(): 
    ledr.off() 
    ledg.off() 
    ledb.off() 
    ledr.on() 
    return ' ' 

@app.route('/green/') 
def green(): 
    ledr.off() 
    ledg.off() 
    ledb.off() 
    ledg.on() 
    return ' ' 

@app.route('/blue/') 
def blue(): 
    ledr.off() 
    ledg.off() 
    ledb.off() 
    ledb.on() 
    return ' ' 

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

led.conf

<virtualhost *:80> 
    ServerName 10.0.0.146 

    WSGIDaemonProcess led user=www-data group=www-data threads=5 home=/var/www/NewTest/ 
    WSGIScriptAlias//var/www/NewTest/led.wsgi 

    <directory /var/www/NewTest> 
     WSGIProcessGroup led 
     WSGIApplicationGroup %{GLOBAL} 
     WSGIScriptReloading On 
     Order deny,allow 
     Allow from all 
    </directory> 
</virtualhost> 

index.html을

<!doctype html> 

<title>Test</title> 
<meta charset=utf-8> 

<a href="/red/">RED</a> <br/> 
<a href="/green/">GREEN</a><br/> 
<a href="/blue/">BLUE</a> 

어떤 아이디어가? 감사합니다.

답변

0

문제는 led.conf에 있습니다. 사용자는 파이가되어야합니다.

<virtualhost *:80> 
    ServerName 10.0.0.146 

    WSGIDaemonProcess led user=pi group=www-data threads=5 home=/var/www/NewTest/ 
    WSGIScriptAlias//var/www/NewTest/led.wsgi 

    <directory /var/www/NewTest> 
     WSGIProcessGroup led 
     WSGIApplicationGroup %{GLOBAL} 
     WSGIScriptReloading On 
     Order deny,allow 
     Allow from all 
    </directory> 
</virtualhost>