क्या nginx के कस्टम त्रुटि पृष्ठों को अक्षम करना संभव है - अगर मैं उन्हें कॉल कर सकता हूं - मेरे ढांचे के अपवाद पृष्ठों को प्रदर्शित करने के लिए?nginx + uwsgi + flask - कस्टम त्रुटि पृष्ठों को अक्षम करना
मैं वास्तव में नहीं देख सकते हैं मेरी WERKZEUG डिबगर उपकरण html में गाया ...
अद्यतन
ठीक है, मैं काम करने के लिए एक बहुत ही बहुत ही सरल कुप्पी आवेदन बनाने के लिए मिला है और मैं पोस्ट करेंगे बिट्स:
/home/my_user/.virtualenvs/nginx-test/etc/nginx.conf
worker_processes 1;
events { worker_connections 1024; }
http {
server {
listen 5000;
server_name localhost;
access_log /home/my_user/.virtualenvs/nginx-test/lib/nginx/access.log;
error_log /home/my_user/.virtualenvs/nginx-test/lib/nginx/error.log;
location/{
include uwsgi_params;
uwsgi_pass unix:/tmp/uwsgi.sock;
}
}
}
/home/my_user/dev/nginx_test/___init___.py
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
raise Exception()
if __name__ == '__main__':
app.run('0.0.0.0', debug=True)
PYTHONPATH वातावरण चर:
$ echo $PYTHONPATH
/home/my_user/dev/
मैं कैसे uwsgi चलाएँ:
$ uwsgi -s /tmp/uwsgi.sock --module nginx_test --callable app
मैं कैसे nginx चलाने :
$ nginx -c ~/.virtualenvs/nginx-test/etc/nginx.conf -p ~/.virtualenvs/nginx-test/lib/nginx/
अगर मैं जड़ पेज मारा:
अगर मैं मैन्युअल रूप से की तरह nginx चलाएँ:
python /home/my_user/dev/nginx_test/___init___.py
मैं बजाय देखेंगे, और क्या मैं देखना चाहता हूँ:
बेशक मैंने यह सुनिश्चित किया कि यह काम करेगा जब मैंने पूर्व को नहीं बढ़ाया ception, लेकिन मेरे सूचकांक() समारोह पर उदाहरण के लिए 'हैलो वर्ल्ड' लौटा दिया।
यह .NET में कस्टम त्रुटि पृष्ठों को संदर्भित किया जाता है। मैं इसे अक्षम करना चाहता हूं और nginx/uwsgi को आंतरिक सर्वर त्रुटि चीज़ के बजाय सीधे ब्राउज़र पर डीबगर द्वारा उत्पन्न एचटीएमएल को पास करना चाहता हूं।
अद्यतन 2
अब अगर मैं द्वारा मोड डिबगिंग सक्षम करने के लिए मेरी कुप्पी एप्लिकेशन को यह बदलने:
/home/my_user/dev/nginx_test/___init___.py
from flask import Flask
app = Flask(__name__)
app.config.update(DEBUG=True)
@app.route('/')
def index():
raise Exception()
if __name__ == '__main__':
app.run('0.0.0.0', debug=True)
तब मुझे 502 त्रुटि मिलती है।
लेकिन अगर मैं के बजाय बढ़ाने अपवाद:
/घर/my_user/dev/nginx_test/___ init___।py
from flask import Flask
app = Flask(__name__)
app.config.update(DEBUG=True)
@app.route('/')
def index():
return 'Hello World'
if __name__ == '__main__':
app.run('0.0.0.0', debug=True)
जब मैं पृष्ठ (http://localhost:5000) मारा मैं अपने ब्राउज़र पर 'नमस्ते विश्व' मिलता है।
इस प्रश्न में यह बताने के लिए बेहतर होगा कि आपको किस त्रुटि पृष्ठ में समस्या है। 502 – number5
आपके सुझाव के लिए धन्यवाद, मैंने एक बहुत सारी नई जानकारी जोड़ दी है जो उम्मीद है कि इस मुद्दे को समझने में मदद मिलेगी। –