我目前正在开发该应用程序,该应用程序将调用服务以执行后端操作,并且我想使用Windows IIS在AWS实例中部署这些API。有人可以解释一下部署相同步骤的步骤吗?
答案 0 :(得分:1)
步骤 1:将项目文件粘贴到 C:\inetpub\wwwroot 或 C:\ 目录或任何其他目录。
第 2 步:在 C:\Python 中安装 Python,因为路径限制用户友好 - 适当的版本并设置路径环境变量。
第 3 步:安装 Microsoft C++ 构建工具 https://visualstudio.microsoft.com/visual-cpp-build-tools/。
第 4 步:如果未安装 Microsoft IIS,请执行以下步骤:转到控制面板 -> 程序和功能 -> 打开或关闭 Windows 功能 -> 选择 Internet 信息服务 (IIS) -> 选择所有服务您的项目,检查应用程序开发功能全部启用!!! -> 确认并继续。
步骤5:打开Microsoft IIS应用程序-右键单击->添加网站...->输入站点名称,选择物理项目路径位置即选择manage.py指定文件夹并输入绑定信息。
第 6 步:是的,您已成功创建 IIS 应用程序站点。
第 7 步:现在,您应该授予对项目文件夹和 python 文件夹的访问权限。
第8步:选择您的项目文件夹并右键单击->选择属性->安全->编辑组或用户名->添加->选择所有对象类型,选择机器,最后,输入对象名称-> IIS AppPool\您的 IIS 站点名称。
例如IIS AppPool\DjangoWebApplication 并检查对象中的名称,如果它的信息正确,它会获取应用程序对象名称,例如然后选择 DjangoWebApplication,然后选择对象名称并选择对应用程序的完全控制......并在 python 文件夹上使用相同的过程
第 9 步:现在,准备安装 python 库。安装所有项目需求库,还安装、pip install openpyxl、wfastcgi。
步骤 10:以管理员身份打开 CMD 并输入命令 wfastcgi-enable。
步骤11:然后,检查Microsoft IIS -> IIS -> 点击FastCGI Settings -> 如果配置成功则找到Details 否则找不到我们手动输入点击Add Application In Name,粘贴python可执行路径位置.
例如c:\python\python.exe ,在参数中粘贴 wfastcgi.py 位置.. 如果你不知道从 cmd 复制,例如c:\python\lib\site-packages\wfastcgi.py 并保持不变,继续
第 12 步:在 manage.py 文件附近创建一个文件 web.config 并输入详细信息:
<configuration>
<system.webServer>
<handlers>
<add name="Python FastCGI"
path="*"
verb="*"
modules="FastCgiModule"
scriptProcessor="C:\Python\python.exe|C:\Python\Lib\site-packages\wfastcgi.py"
resourceType="Unspecified"
requireAccess="Script" />
</handlers>
</system.webServer>
<appSettings>
<!-- Required settings -->
<add key="WSGI_HANDLER" value="my_app.wsgi_app()" />
<add key="PYTHONPATH" value="C:\MyApp" />
<add key="DJANGO_SETTINGS_MODULE" value="my_app.settings" />
<!-- Optional settings -->
<add key="WSGI_LOG" value="C:\Logs\my_app.log" />
<add key="WSGI_RESTART_FILE_REGEX" value=".*((\.py)|(\.config))$" />
<add key="APPINSIGHTS_INSTRUMENTATIONKEY" value="__instrumentation_key__" />
<add key="WSGI_PTVSD_SECRET" value="__secret_code__" />
<add key="WSGI_PTVSD_ADDRESS" value="ipaddress:port" />
</appSettings>
</configuration>
从这里开始,您必须根据您的系统角度进行更改
首先,更改 scriptProcessor 设置,例如"c:\python\python.exe|c:\python\lib\site-packages\wfastcgi.py"
现在可以使用
二、改<add key="WSGI_HANDLER" value=" DjangoWebApplication.wsgi.application" />
三、改<add key="PYTHONPATH" value="C:\DjangoWebApplication folder" />
四、改<add key="DJANGO_SETTINGS_MODULE" value=" DjangoWebApplication.settings" />
然后,剩下的可选。
第 12 步:然后,从静态文件夹创建另一个文件 web.config 并输入详细信息:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<clear />
<add name="StaticFile" path="*" verb="*" modules="StaticFileModule" resourceType="File" requireAccess="Read" />
</handlers>
</system.webServer>
</configuration>
第 13 步:然后,从媒体文件夹创建另一个文件 web.config 并输入详细信息:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<clear />
<add name="StaticFile" path="*" verb="*" type="" modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule" scriptProcessor="" resourceType="Either" requireAccess="Script" allowPathInfo="true" preCondition="" responseBufferLimit="4194304" />
</handlers>
<directoryBrowse showFlags="Date, Time, Size, Extension, LongDate" />
</system.webServer>
</configuration>
步骤 14:打开 Internet 信息服务 (IIS) 管理器。在连接下选择服务器,然后在管理下的中心窗格中选择配置编辑器。在部分下选择 system.webServer/handlers。在部分下选择解锁部分。这是必需的,因为 C:/inetpub/wwwroot/web.config 为我们的项目创建了一个路由处理程序。
第 15 步:添加虚拟目录。为了启用静态文件服务,将静态别名映射到静态目录,C:/inetpub/wwwroot/webproject/static/。
步骤 16:添加虚拟目录。为了启用服务媒体文件,将媒体别名映射到媒体目录 C:/inetpub/wwwroot/webproject/media/。
第 17 步:是的,现在已准备好托管站点,然后检查 settings.py 编辑允许的主机并添加 IP 地址和端口号。
第 18 步:然后,通过 Django 运行命令 python manage.py collectstatic 生成静态文件。
第 19 步:现在,一切就绪……启动服务器并检查一切是否正常。
请参阅:https://github.com/Johnnyboycurtis/webproject 以获得清晰的解释...
答案 1 :(得分:0)
我不确定您的应用程序的用途是什么(也是最好的部署方式),但是在Windows IIS Server上部署Django项目有相当简单的步骤。
这里是指南Deploy Django on Windows using Microsoft IIS和GitHub/webproject后面的代码
此外,这是Microsoft撰写的有关如何部署Python项目Configure Python web apps for IIS的文章。本文指导您完成如何使用IIS部署Django项目以及如何配置项目的web.config
文件的步骤。本文未完全详细介绍,因此这就是为什么我在上面包含自己的教程,该教程提供了在Microsoft IIS上部署Django项目的分步过程。
根据您的项目,您可能有特定的需求,但以下是使用IIS设置Django的一般工作流程
安装IIS和enable CGI
将项目放置在以下目录C:/inetpub/wwwroot/
和web.config
文件中。 web.config
文件不能坐在Django项目目录中,因为IIS无法找到它。
Enable wfastcgi并将其Python路径复制到您的web.config文件中(在处理程序部分下)。
向您的settings.py
文件添加必要的更改,并确保ALLOWED_HOSTS
已更新。
导航到localhost
并测试您的项目。
同样,这些步骤中缺少细节,但是希望上面的链接为启动和运行项目提供了必要的条件。