config.py与web. py的区别.在将Flask应用部署到Windows IIS时,请使用配置文件



背景信息

我正在工作中开发一个flask web应用程序。由于我公司现有的web基础设施,我必须通过IIS在Windows Server上部署flask应用程序。

对于开发过程,我在本地机器上使用普通的Flask Werkzeug开发服务器。在开发过程中,创建了一个config.py文件(请参见下文)。

现在我正在IIS上将应用程序部署到生产环境中。那里有一张网。配置文件是IIS服务器解释我的应用程序的python代码所必需的(我通过wfastcgi python模块使用FastCGI)。

我现在在我的IIS生产服务器应用程序目录中有两个文件,我不确定它们是如何交互或相关的:config.pyweb.config

有人能向我解释这些文件的差异,如果config.py仍然与我的应用程序在IIS生产环境相关?


config.py

import os 
from dotenv import load_dotenv
basedir = os.path.abspath(os.path.dirname(__name__))
load_dotenv(os.path.join(basedir, '.env'))
# Create the super class
class Config(object):
SECRET_KEY = os.environ.get('SECRET_KEY')
SQLALCHEMY_COMMIT_ON_TEARDOWN = True
SQLALCHEMY_TRACK_MODIFICATIONS = False
# Create the development config
class DevelopmentConfig(Config):
DEBUG = True

# Create the testing config
class TestingConfig(Config):
DEBUG = False
TESTING = True

# create the production config
class ProductionConfig(Config):
DEBUG = False
TESTING = False

网络。配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="FastCGI Handler" path="*" verb="*" modules="FastCgiModule" scriptProcessor="f:appsvenvscriptspython.exe|f:appsvenvlibsite-packageswfastcgi.py" resourceType="Unspecified" requireAccess="Script" />
</handlers>
</system.webServer>
</configuration>

config.py文件包含计算机程序的参数和初始设置。导入config.py文件允许在当前程序中使用config.py文件中的变量和函数。这是主要的配置文件,不应该被修改。它可以作为配置设置的参考。

网络。config是一个由IIS读取的文件,用于配置由IIS和web托管的应用程序。config用于ASP。. NET Web项目/Web服务。网络。默认情况下,配置包含web应用程序所需的几个配置。它也被称为应用程序级配置文件,并从机器继承设置。配置文件。