如何使用AWS实例在windows IIS中部署Django Web应用程序?

2024-04-24 09:51:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在开发一个应用程序,它将调用服务来执行后端操作,我想使用windows IIS在AWS实例中部署这些API。有人能给我解释一下部署同样的系统的步骤吗


Tags: 实例awsapi应用程序windows系统部署步骤
2条回答

如何使用Microsoft IIS服务器在Windows上部署Django Web应用程序

使用Microsoft IIS在Windows上部署Django

步骤1:将项目文件粘贴到C:\inetpub\wwwroot或C:\Directory或任何其他目录

第2步:在C:\Python中安装Python,因为路径限制用户友好–适当的版本并设置path环境变量

步骤3:安装微软C++的编译工具https://visualstudio.microsoft.com/visual-cpp-build-tools/

< H4>安装MIROSOFT C++ BuID工具< /H4>

Install_Mirosoft _C++_Buid_Tool

步骤4:如果未安装Microsoft IIS,请执行以下步骤:转到控制面板->;程序和功能->;打开或关闭Windows功能->;选择Internet信息服务(IIS)->;根据您的项目选择所有服务,检查应用程序开发功能是否全部启用-&燃气轮机;确认并继续

在Windows中打开IIS功能

Turn_on_IIS_Feature_in_Windows

步骤5:打开Microsoft IIS应用程序-右键单击->;添加网站…->;输入站点名称,选择物理项目路径位置,即选择manage.py designation文件夹并输入绑定信息

步骤6:是的,您已成功创建IIS应用程序站点

步骤7:现在,您应该为您的项目文件夹和python文件夹提供访问权限

步骤8:选择项目文件夹并右键单击->;选择属性->;安全性->;编辑组或用户名->;添加->;选择所有对象类型,选择机器,最后输入对象名称->;IIS应用池\您的IIS站点名称

例如,IIS AppPool\DjangoWebApplication并检查对象中的名称,如果其信息正确,则获取应用程序对象名称,例如,DjangoWebApplication,然后选择对象名称并选择对应用程序的完全控制。。在python文件夹上也使用相同的过程

步骤9:现在,准备好安装python库了。请使用install、pip install openpyxl、wfastcgi安装所有项目需求库

步骤10:以管理员身份打开CMD并输入命令wfastcgienable

指令码

CMD_Code

步骤11:然后,检查Microsoft IIS->;IIS->;单击FastCGI设置->;如果配置成功,则找到详细信息,否则未找到详细信息。我们通过手动单击“在名称中添加应用程序”来输入,粘贴python可执行文件路径位置

例如c:\python\python.exe,在参数中粘贴wfastcgi.py位置。。如果您不知道如何从cmd复制,例如c:\python\lib\site packages\wfastcgi.py并保持不变,请确定并继续

快速CGI设置

FastCGI_Settings

步骤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>

从这里开始,您必须根据您的系统透视图进行更改

首先,现在可以使用更改脚本处理器设置,例如"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:是的,在检查设置之前,现在已准备好托管站点。请编辑允许的主机并添加IP地址和端口号

步骤18:然后,通过Django生成staticfile,并运行命令python manage.py collectstatic

步骤19:现在,一切都准备好了…启动服务器并检查所有工作是否正常

请参阅:https://github.com/Johnnyboycurtis/webproject以获得清晰的解释

参考文献

我不确定应用程序的用途是什么(因此也是部署的最佳方式),但在Windows IIS服务器上部署Django项目有相当简单的步骤

下面是一个指南Deploy Django on Windows using Microsoft IIS和要遵循的代码GitHub/webproject

另外,这里有一篇由微软撰写的关于如何部署Python项目Configure Python web apps for IIS的文章。本文将指导您完成有关如何使用IIS部署Django项目以及如何配置项目的web.config文件的步骤。这篇文章并不十分详细,因此我在上面提供了自己的教程,其中提供了在MicrosoftIIS上部署Django项目的逐步过程

使用Microsoft IIS设置Django

根据您的项目,您可能有特定的需求,但是使用IIS设置Django的一般工作流程如下

  1. 安装IIS和enable CGI

  2. 将项目放置在以下目录C:/inetpub/wwwroot/以及web.config文件中。web.config文件不能位于Django项目目录中,因为IIS找不到它

  3. Enable wfastcgi并将其Python路径复制到web.config文件中(在handler部分下)

  4. settings.py文件添加必要的更改,并确保ALLOWED_HOSTS已更新

  5. 解锁IIS handlers

  6. 导航到localhost并测试您的项目

同样,这些步骤中缺少了细节,但希望上面的链接能够为您的项目的启动和运行提供必要的帮助

相关问题 更多 >