とりわけ、データベースにクエリを実行し、データを使用して Excel スプレッドシートを作成する Web アプリケーションがあります。ファイルをクライアント マシンに送信する前に、スプレッドシートをサーバーのディスクに保存する必要があります。Flask フレームワークと openpyxl を使用してスプレッドシートを生成しています。Flask の開発サーバーで実行するとすべて正常に動作しますが、実際のサーバーは WSGI を使用した Apache2 です。そこで実行すると、スプレッドシートを保存しようとすると「許可が拒否されました」というエラーが発生します。Apache/WSGI で実行するときの Python の作業ディレクトリがわかりません。
おそらくWSGI構成ファイルで、作業ディレクトリを変更したり、保存先を制御したりする方法はありますか? 可能であれば、保存に相対パスを使用したいと思います (コードの移植性が向上します)。そのため、作業ディレクトリを変更することが最善の解決策です。