J'apprends Flask depuis un moment, mais je ne l'ai jamais déployé, alors je réfléchissais à la façon de le déployer. J'y ai réfléchi, commençons par lancer le service, alors j'ai pensé à le faire en premier. , et j'ai choisi ici. C'est Flask+uwsgi+Nginx+Ubuntu. L'option Python est 2.7.2. C'est celle qui est fournie avec le système Ubuntu. Cela semble simple à apprendre sans avoir à passer par le logiciel. connexion. Actuellement, mon propre flacon est écrit en python3, et je vais y passer lentement, comprenons d'abord cela, puis il sera très facile à optimiser. En fait, je ne connais pas grand-chose à de nombreux principes. Commençons par configurer cela et comprenons lentement la logique à l'intérieur.
Nginx est un serveur Web et un serveur proxy inverse efficace qui peut être utilisé comme équilibrage de charge (lorsque n utilisateurs accèdent au serveur, il peut décharger et partager la charge de la pression du serveur), par rapport à Apache, Nginx prend en charge une concurrence élevée et peut prendre en charge des millions de connexions TCP et des centaines de milliers de connexions simultanées. Il est simple à déployer, consomme moins de mémoire et a un faible coût. de nombreux modules comme Apache. Nginx prend en charge le protocole uwsgi de uWSGI, nous pouvons donc combiner Nginx avec uWSGI, et Nginx transmet le contenu dynamique à uWSGI pour traitement via uwsgi_pass
.
La documentation officielle est ici
Le meilleur tutoriel Nginx est ici
uwsgi
sudo apt-get install python-pip
pip install flask
import flaskAucune erreur n'est signalée, ce qui prouve que notre flask est installé avec succès. La prochaine chose que nous devons faire est d’installer ngnix et uwsgi.
sudo apt-get install nginx
.
#app/__init__.pyfrom flask import Flask app = Flask(__name__)from app import view
from app import app @app.route('/')def index():return 'hellow'
from app import appif __name__ == "__main__": app.run()
$ sudo rm /etc/nginx/sites-enabled/default
server { listen 8081; server_name 127.0.0.1; charset utf-8; client_max_body_size 75M; location / { try_files $uri @app; } location @app { include uwsgi_params; uwsgi_pass 127.0.0.1:9000; } }
<code class="hljs groovy">sudo ln -s <span class="hljs-regexp"><span class="hljs-regexp">/home/liwanlei/Desktop/hellowflask/<span class="hljs-regexp">helloflask_nginx.conf /etc<span class="hljs-regexp">/nginx/conf.d/<br>这样我们再去启动我们的nginx,</span></span></span></span></code>
sudo /etc/init.d/nginx restart
[uwsgi] base = /home/liwanlei/Desktop/hellowflask app = hello#module = %(app)pidfile = /var/run/uwsgi.pid master = true wsgi-file = /home/liwanlei/Desktop/hellowflask/hello.py pythonpath = /usr/bin/python chdir = /home/liwanlei/Desktop/hellowflask socket = 127.0.0.1:9000callable = app logto = %n.log plugins = python processes = 8master = true
sudo /usr/bin/uwsgi --ini/home/liwanlei/Desktop/hellowflask/helloflask_uwsgi.ini
我们去重新启动我们的nginx,
<code class="hljs bash">sudo nginx <span class="hljs-_">reload<br>平滑重启可以用用,重新加载配置文件,用新的工作进程代替旧的工作进程。<br></span></code>
sudo nginx -s reload
<code class="hljs bash"><span class="hljs-_"><br>启动后,我这里修改了地址,这里就可以直接访问了,那么我们的部署这样就算可以了,简单的。<br><img src="https://img.php.cn/upload/article/000/000/001/25f4d9be3a729ae5fc17c2fefb915c9c-3.jpg" alt=""></span></code>
<br>
完工之后,感觉还是很简单的 有问题那么就去看log,只要log配置得当,那么排除错误是很快的。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!