Rumah Operasi dan penyelenggaraan Apache flask怎么结合apache

flask怎么结合apache

Oct 29, 2019 am 11:17 AM
apache

flask自带的开发Web服务器表现很差,响应慢,而且直接通过nginx进行反向代理,经常无法响应请求。有两个可以在生产环境中使用、性能良好且支持Flask程序的服务器,分别是Gunicorn和uWSGI,但是这两个模块不提供对window的支持。

flask怎么结合apache

因此我们需要使用mod_wsgi这个模块使得flask能够在apache上进行部署,mod_wsgi模块是一个python写的Apache的FastCGI模块。   (推荐学习:apache使用

下载完毕后解压得到Apache24,打开进入conf文件,用文本打开,我这里采用Atom打开。

现在说明一下,我们需要修改的地方:

1、ServerRoot "c:/Apache24":修改成自己的目录地址

2、Listen 8080:端口号配置,部分用户可能会发现自己的80端口占用,可能是IIS或者SQLserver占用,我们可以通过修改这个端口号,方便测试

3、修改目录授权

原本的:

<Directory />
AllowOverride none
Require all denied
</Directory>
Salin selepas log masuk

修改后:

<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>
Salin selepas log masuk

4、修改文档根路径为自己的文件路径

DocumentRoot "c:/Apache24/htdocs"
<Directory "c:/Apache24/htdocs">
Salin selepas log masuk

5、mod模块配置(重点)

(1)首先对下载下来的mod.whl文件进行安装:

pip install <文件绝对路径>

(2)安装成功后,运行下面的命令:

mod_wsgi-express module-config
Salin selepas log masuk

(3)上面这条命令成功运行后,我们可以得到三条信息:

apache-18.png(4)然后使用这三条信息代替.so文件,加入到apache的配置文件中:

apache-19.png6、配置站点(重点):

# <VirtualHost> definition.  These values also provide defaults for
# any <VirtualHost> containers you may define later in the file.
Salin selepas log masuk

因为我是一个不是很懂配置apache的人,我一开始看到参考链接中的配置不知道放在哪里,所以可以通过全文搜索,搜到了这句话,我可以确定将这个放在文件最底部。

将下面这段复制到conf文件的最底部,并且修改路径为自己的路径

<VirtualHost *:8080 >
ServerAdmin example@xx.com
DocumentRoot E:\Environment\Apache\Apache24\text_web
<Directory "E:\Environment\Apache\Apache24\text_web">
Order allow,deny
Allow from all
</Directory>
WSGIScriptAlias / E:\Environment\Apache\Apache24\text_web\test.wsgi
</VirtualHost>
Salin selepas log masuk

上面的站点配置说明:

(1)项目路径(不一定要放在apache目录下):

DocumentRoot E:\Environment\Apache\Apache24\text_web
Salin selepas log masuk

(2)wsgi模块启动文件(重点):

WSGIScriptAlias / E:\Environment\Apache\Apache24\text_web\test.wsgi
Salin selepas log masuk

注意:这里的“/”是必须的,表示url前缀,后面可以根据需求修改。

(3)项目路径权限:设置为允许全部

<Directory "E:\Environment\Apache\Apache24\text_web">
Order allow,deny
Allow from all
</Directory>
Salin selepas log masuk

到这里我们的httpd.conf文件已经配置完成了。

二、下面进入对flask项目的配置:

项目目录:

apache-20.png

1、test.wsgi文件说明:

import sys
sys.path.insert(0, "E:/Environment/Apache/Apache24/text_web") #项目路径
Salin selepas log masuk

from test import app #将我们的flask项目project名引入

application = app #applcation一定不能改成别的,因为wsgin在解析这个文件时,只认applcation(参考链接)

2、flask的主文件

from flask import Flask
 
app = Flask(__name__)
 
@app.route(&#39;/hello&#39;)
def hello_world():
    return &#39;Hello World!&#39;
 
if __name__ == &#39;__main__&#39;:
    app.run()
Salin selepas log masuk

到此,我们的项目配置基本完成,这里特别需要注意的是在wsgi文件中的项目引入。

三、启动或安装apache

启动管理员模式的cmd进入到Apache24的bin文件路径下:

安装apache为系统服务:

httpd -k install
Salin selepas log masuk

启动apache:

httpd -k start
Salin selepas log masuk

我发现有的电脑可以直接通过打开httpd.exe直接运行,而不需要将httpd安装入系统服务。

其他可能用到的apache命令:

停止apache服务:

httpd -k stop
Salin selepas log masuk

重启apache服务:

httpd -k restart
Salin selepas log masuk

至此,我们的flask项目通过wsgi模块搭建在apache服务已经完成构建完成,打开localhost:8080/hello,看是否出现helloworld,如果发现项目仍然没有配置成功,请留意一下apache的错误输出日志。错误输出日志在<你的安装路径>\Apache24\logs\error.lo

Atas ialah kandungan terperinci flask怎么结合apache. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara menetapkan direktori CGI di Apache Cara menetapkan direktori CGI di Apache Apr 13, 2025 pm 01:18 PM

Untuk menubuhkan direktori CGI di Apache, anda perlu melakukan langkah-langkah berikut: Buat direktori CGI seperti "CGI-Bin", dan memberikan kebenaran menulis Apache. Tambah blok arahan "Scriptalias" dalam fail konfigurasi Apache untuk memetakan direktori CGI ke url "/cgi". Mulakan semula Apache.

Cara Memulakan Apache Cara Memulakan Apache Apr 13, 2025 pm 01:06 PM

Langkah-langkah untuk memulakan Apache adalah seperti berikut: Pasang Apache (perintah: sudo apt-get pemasangan apache2 atau muat turun dari laman web rasmi) Mula Apache (linux: Sudo Systemctl Mula Apache2; Windows: Klik kanan "Apache2.4" Perkhidmatan dan pilih "Mula") Boot secara automatik (Pilihan, Linux: Sudo Systemctl

Cara menyambung ke pangkalan data Apache Cara menyambung ke pangkalan data Apache Apr 13, 2025 pm 01:03 PM

Apache menyambung ke pangkalan data memerlukan langkah -langkah berikut: Pasang pemacu pangkalan data. Konfigurasikan fail web.xml untuk membuat kolam sambungan. Buat sumber data JDBC dan tentukan tetapan sambungan. Gunakan API JDBC untuk mengakses pangkalan data dari kod Java, termasuk mendapatkan sambungan, membuat kenyataan, parameter mengikat, melaksanakan pertanyaan atau kemas kini, dan hasil pemprosesan.

Apa yang Harus Dilakukan Sekiranya Pelabuhan Apache80 Diduduki Apa yang Harus Dilakukan Sekiranya Pelabuhan Apache80 Diduduki Apr 13, 2025 pm 01:24 PM

Apabila port Apache 80 diduduki, penyelesaiannya adalah seperti berikut: Cari proses yang menduduki pelabuhan dan tutupnya. Semak tetapan firewall untuk memastikan Apache tidak disekat. Jika kaedah di atas tidak berfungsi, sila buat semula Apache untuk menggunakan port yang berbeza. Mulakan semula perkhidmatan Apache.

Cara memadam lebih daripada nama pelayan Apache Cara memadam lebih daripada nama pelayan Apache Apr 13, 2025 pm 01:09 PM

Untuk memadam arahan Serverve Name tambahan dari Apache, anda boleh mengambil langkah -langkah berikut: Kenal pasti dan padamkan Arahan ServerName tambahan. Mulakan semula Apache untuk membuat perubahan berkuatkuasa. Semak fail konfigurasi untuk mengesahkan perubahan. Uji pelayan untuk memastikan masalah diselesaikan.

Cara melihat versi Apache anda Cara melihat versi Apache anda Apr 13, 2025 pm 01:15 PM

Terdapat 3 cara untuk melihat versi pada pelayan Apache: melalui baris arahan (Apachectl -v atau Apache2CTL -V), periksa halaman status pelayan (http: // & lt; IP pelayan atau nama domain & gt;/pelayan -status), atau lihat fail konfigurasi Apache (Serverversion: Apache/& lt;

Cara Mengkonfigurasi Zend untuk Apache Cara Mengkonfigurasi Zend untuk Apache Apr 13, 2025 pm 12:57 PM

Bagaimana cara mengkonfigurasi zend di Apache? Langkah -langkah untuk mengkonfigurasi Rangka Kerja Zend dalam pelayan web Apache adalah seperti berikut: Pasang Rangka Kerja Zend dan ekstraknya ke dalam direktori pelayan web. Buat fail .htaccess. Buat direktori aplikasi Zend dan tambahkan fail index.php. Konfigurasikan aplikasi Zend (Application.ini). Mulakan semula pelayan web Apache.

Bagaimana Debian Meningkatkan Kelajuan Pemprosesan Data Hadoop Bagaimana Debian Meningkatkan Kelajuan Pemprosesan Data Hadoop Apr 13, 2025 am 11:54 AM

Artikel ini membincangkan cara meningkatkan kecekapan pemprosesan data Hadoop pada sistem Debian. Strategi pengoptimuman meliputi peningkatan perkakasan, pelarasan parameter sistem operasi, pengubahsuaian konfigurasi Hadoop, dan penggunaan algoritma dan alat yang cekap. 1. Pengukuhan sumber perkakasan memastikan bahawa semua nod mempunyai konfigurasi perkakasan yang konsisten, terutama memberi perhatian kepada prestasi CPU, memori dan peralatan rangkaian. Memilih komponen perkakasan berprestasi tinggi adalah penting untuk meningkatkan kelajuan pemprosesan keseluruhan. 2. Sistem operasi Tunes deskriptor fail dan sambungan rangkaian: Ubah suai fail /etc/security/limits.conf untuk meningkatkan had atas deskriptor fail dan sambungan rangkaian yang dibenarkan dibuka pada masa yang sama oleh sistem. Pelarasan Parameter JVM: Laraskan fail Hadoop-env.sh

See all articles