不知道为什么……要这样……

IIS 里的 FTP 站点一旦绑定主机名和 IP 就会出错:

530: valid hostname is expected

你可以把主机名和 IP 做成两条绑定,但是不能在一条绑定里同时设置主机名和 IP

或者,粗暴的方式,只绑定 IP(因为你肯定需要在域名商那里设置主机名的解析地址的,对吧)

有太多文章讲这个了,但是以我自己的体验来说,好像并不那么顺利啊。

记录我觉得最重要的三点:

  1. Python 要安装在 C 盘根下,例如 C:/Python37/
  2. pip install wfastcgi 执行 wfastcgi-enable 命令,然后你就能得到 FastCGI script processor 了
  3. 不用打开 IIS 各种设置,直接用 web.config 来配置更直观。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <handlers accessPolicy="Read, Execute, Script">
            <add 
            name="DjangoHanlder" 
            path="*" 
            verb="*" 
            modules="FastCgiModule" 
            scriptProcessor="C:\Python37\python.exe|C:\Python37\Lib\site-packages\wfastcgi.py"
            resourceType="Unspecified" 
            requireAccess="Script" />
        </handlers>
    </system.webServer>
    <appSettings>
        <add key="WSGI_HANDLER" value="django.core.wsgi.get_wsgi_application()" />
        <add key="PYTHONPATH" value="C:\inetpub\wwwroot\django" />
        <add key="DJANGO_SETTINGS_MODULE" value="app.settings" />
    </appSettings>
</configuration>