我在var/www/html
中有多个烧瓶应用,例如var/www/html/website
,var/www/html/summary
,var/www/html/sentiment
一旦我成功运行了所有应用程序。
然后,我又添加了一个应用程序,为此我创建了conf文件并重新启动了服务器。
所有应用程序停止运行后,仅打开var/www/html/sentiment
。
我在python,wsgi和conf文件中检查了其他应用程序的代码,与情感相同。
情感应用代码
flaskapp.py
from flask import Flask
app = Flask(__name__)
@app.route('/sentiment')
def hello_world():
return 'Hello from Sentiment!'
if __name__ == '__main__':
app.run()
flaskapp.wsgi
import sys
sys.path.insert(0, '/var/www/html/sentiment/')
from flaskapp import app as application
conf文件-/etc/apache2/sites-available/sentiment.conf
<VirtualHost *:80>
ServerName IP
ServerAdmin admin@mywebsite.com
WSGIScriptAlias / /var/www/html/sentiment/flaskapp.wsgi
<Directory /var/www/html/sentiment/>
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
摘要应用程序代码 flaskapp.y
from flask import Flask
app = Flask(__name__)
@app.route('/summary')
def hello_world():
return 'Hello from Summary!'
if __name__ == '__main__':
app.run()
flaskapp.wsgi
import sys
sys.path.insert(0, '/var/www/html/summary/')
from flaskapp import app as application
/etc/apache2/sites-available/summary.conf
<VirtualHost *:80>
ServerName IP
ServerAdmin admin@mywebsite.com
WSGIScriptAlias / /var/www/html/summary/flaskapp.wsgi
<Directory /var/www/html/summary/>
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
当我打开ip /情感时仍然有效,但是ip / summary给出
The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.
对此有何建议?
答案 0 :(得分:1)
问题出在您的 WSGIScriptAlias 名称上。
/
指向目录中的所有内容。
为所有应用程序提供唯一的别名。
示例:
将 WSGIScriptAlias 的/
更改为/app1
将 WSGIScriptAlias 的/
更改为/app2
。
然后重新启动服务器。