1

Sqlalchemy を使用して Flask で Web アプリを実行しています。デバッグ サーバーでは、アプリは正常に動作します。しかし、ModWSGI を使用して (コードを何も変更せずに) Apache から実行しようとすると、突然次のエラーが発生します。

OperationalError: (OperationalError) (2005、「不明な MySQL サーバー ホスト 'myremotehost.topleveldomain' (111)」) なし なし

これについて非常に不可解なのは、mysql サーバーが問題なく実行されており、このアプリがフラスコ デバッグ サーバーを使用して実行されている場合にのみ、mysql サーバーを検出できることです。また、問題なくローカルで実行されている MySQL サーバーも検出されます。

皆さんを助けるためにどのコードを表示すればよいかさえわかりませんが、ここで私はそれを呼び出します:

engine = create_engine(DATABASE, echo=False) 
db_session = scoped_session(sessionmaker(autocommit=False,
                                         autoflush=False,
                                         bind=engine))

URL は次のようになります。

mysql://ユーザー名:password@mydomain.com:3306/dbname

...そして、ここに virtualhost コードがありますhttpd.conf:

<VirtualHost *:808>
    ServerName localhostdomaingoeshere
    WSGIScriptAlias / /path/to/app.wsgi

    Alias /static /path/to/static

    LogLevel info
    ErrorDocument 502 /error

    <Directory /path/to/app>
        Order deny,allow
        Allow from all
    </Directory>
</VirtualHost>

エラーメッセージが意味をなさないので、どこから始めればいいのかさえわかりません。

4

1 に答える 1

-1

実際には解決策ではありませんが、私はgunicornに切り替えました。これは、それほど頭痛の種ではありません。

于 2012-06-02T15:39:58.090 に答える