2017-06-06 3 views
1

Microsoft Azure Webアプリケーションインスタンス(管理されたWindows VM)にDjango Webアプリケーションをデプロイしようとしています。ここでのドキュメントは、Django/WSGIを別のPythonランタイムを使用して晴れのあるWebアプリケーションとしてデプロイするにはどうすればよいですか?

https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-python-configure

は、Python 2.7やPython 3.4のいずれかを使用してアプリケーションをデプロイする方法について説明します。私はPython 3.6で構築されたアプリケーションをデプロイしようとしています(Azureをすぐに使用できるランタイムではありません)。 Azureの 'Site Extensions'機能を使用してランタイムをインストールしました。ここで私は、主にApacheを使用してLinuxシステム上で動作する拡張機能(と思う)へのリンク、

https://www.siteextensions.net/packages/python361x86/

です。私がここで直面している難しさはPython 3.6を使用してdjango webappを実行するAzureインスタンスでIISを構成する方法です(runserverコマンドを使用して自分の開発システムで動作します)。悲しいことに、私はAzure(ビジネス制約)上でLinux VMを使用するように要求することはできません。

私が持っている1つの問題は、プロジェクトにweb.configファイルを書き込む方法です。 Python3.4のリファレンスはvirtualenvを使用しています。virtualenvは、Pythonでサイト拡張機能(ref:https://github.com/Azure/azure-python-siteextensions/issues/6)で明示的に無効にされています。

私が持っている別の問題は、FastCGI(ref:http://docs.pylonsproject.org/projects/waitress/en/latest/)の代わりにウェイトレスWSGIを使用したいということです。

誰かがweb.config + python wsgi scriptのPython 3.6を使用して紺碧で実行される組み合わせを教えられますか?代わりの提案も歓迎されます。

+0

この記事は、https://blogs.msdn.microsoft.com/pythonengineering/2016/08/04/upgrading-python-on-azure-app-service/を参照してください。 –

答えて

0

はあなたのDjangoプロジェクトを作成するために、tutorialに従っていた場合、代わりに関連するコンテンツは以下にこれらのコンテンツを使用するために文書Configuring Python with Azure App Service Web AppsのセクションWeb.configにはPython 3.4のための実施例web.configの内容を参照してください。

  1. 代わりにXMLパス<system.webServer>/<handlers>のコンテンツの

    <add name="Python FastCGI" path="handler.fcgi" verb="*" modules="FastCgiModule" 
        scriptProcessor="D:\home\Python36\python.exe|D:\home\Python36\Scripts\wfastcgi.py" 
        resourceType="Unspecified" requireAccess="Script" /> 
    

    を使用する代わりに<add key="WSGI_ALT_VIRTUALENV_HANDLER" value="app.wsgi_app" />

  2. <add key="WSGI_ALT_VIRTUALENV_HANDLER" value="django.core.wsgi.get_wsgi_application()" />を使用します。

また、GitHubにAzureのオフィシャルsample Django projectがあります。これも参照できます。

関連する問題