問題タブ [flup]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - django + nginx + flupを使用する場合、printステートメントはどこに書き込みますか?
私は自分のdjangoアプリをデバッグしようとしていますが、印刷ステートメントが出力をどこに送信しているかわからないため、難しいです。djangoとnginxでflupとfastcgiを使用しており、nginxを介してPythonエラーとアクセスログを確認できますが、printステートメントがどこに行くのかわかりません。
これが私のnginx.confファイルからの関連するものです:
そして、私はこのコマンドを使用してfastcgiを実行しています:
私は基本的にこのチュートリアルhttps://code.djangoproject.com/wiki/DjangoAndNginxに従い、私のOSはubuntuです!
助けてくれてありがとう!
django - PyCharm 2.7 + django 1.4.3 + flup.sever.fcgi_fork をインポートできません
OS: Windows 7 ジャンゴ: 1.4.3
行った活動:
- PyCharm 2.6.3 から PyCharm 2.7 にアップグレードされました
- PyCharm 2.6.3 で完全に正常に動作していたプロジェクトを開きました。
- PyCharm
manage.py run
で実行 - flup がインストールされていないというエラーを受け取りました (PyCharm 2.6.3 では flup は必要ありませんでした)。
コマンド
pip install flup
ラインで実行C:\>pip install flup
flup のダウンロード/解凍 flup-1.0.3.dev-20110405.tar.gz (57kB) のダウンロード: 57kB のダウンロード パッケージ flup の setup.py egg_info の実行
収集したパッケージのインストール: flup flup の setup.py install の実行
Successfully installed flup
清掃...PyCharm
manage.py run
で実行
次のエラーを受け取りました:
質問:これを修正するにはどうすればよいですか?
python - lighttpd mod_fastcgi から Apache 2.2 mod_fcgid に変換する方法
次を含むPythonスクリプトがあります。
Python 2.7.3 を使用して、ubuntu 12.04.2 LTS サーバーのコマンド ラインからこの Python スクリプトを実行します。
その同じサーバーで、lighttpd バージョン 1.4.28 が構成されています。
JSON オブジェクトを使用して POST として要求https://TheEffKyouDeeEnn/MyFCGI/blah/blahblah
すると、システムは期待どおりに動作し、コマンド ラインで実行されている Python スクリプトに要求を渡します。
Apache 2.2 を実行している MS-Windows Server マシンで同じ機能を構成する必要があります。Apache インスタンスのあるサーバーだけでなく、ネットワーク上の任意の場所に Python スクリプトをデプロイする機能を維持したいと考えています。ドキュメントはそれが可能であることを示しているようですが、少なくとも mod_fcgid を使用すると、自分で動作させることができず、実際の例を見つけることができません。
mod_fcgid が適切なモジュールであることを確認し、lighttpd の動作を再現するように Apache と mod_fcgid を構成する方法の例を挙げていただけますか?
django - Django/flup を使用して HTTP POST リクエストが 128k で失敗する
SO 私が持っているフォームは、画像を取得してアップロードします。画像が 128k を超えるとエラーが発生しますが、それ以外の場合は問題なく動作します。
Django にはテンプレートがない 500.shtml をレンダリングしようとするため、エラー メッセージは表示されません。.shtml に注意してください。これは Django の通常の 500 エラーではなく、サーバーです。私は共有ホスティングを利用しています。
Django 1.4.5、Flup 1.0.3、Python 2.6.6 を使用
.htaccess で LimitRequestBody ディレクティブを試しましたが、効果がありません
追加の詳細: これは、django 管理インターフェイスと、作成したカスタム フォーム/ビューの両方で発生します。ビューは実行されません。さまざまなファイル ストレージ アプローチを試しました (plain/filesystem および django-storages(s3boto)。ファイルが 128 KB 未満である限り、すべてがうまく機能します。
更新- 解決策なし: ホスティング会社と詳しく話しました。その他の設定等を確認しました。ローカルのテスト環境にデプロイすると再現できません。ライブ サイトで回避策を使用することになった (ライブ アップロードの代わりに既存の URL を使用する)
apache2 - Apache2 FastCGI通信と動的サーバーが最初の読み取りアイドルタイムアウトを中止しました
概要:最も単純な「Hello World」FastCGI スクリプトを実行できず、要求は常にタイムアウトになります。サーバーと FastCGI スクリプト (動的 FastCGI スクリプトを使用) との間に通信がまったくないようです。
環境
- Ubuntu プレサイス (12.04)
- パッケージ
apache2.2-bin
- パッケージ
apache2-mpm-prefork
- パッケージ
libapache2-mod-fastcgi
- パッケージ
libfcgi-perl
- パッケージ
python-flup
- で仮想ホストとして構成された複数のサイト
127.0.0.1
- が所有し、すべて (所有者、グループ、およびその他) が読み取り可能な
/var/lib/apache2/fastcgi
ディレクトリが存在します。www-data
/var/lib/apache2/fastcgi/dynamic
が所有するディレクトリが存在し、所有www-data
者に制限されています (読み取り、書き込み、およびアクセスはwww-data
のみ)/var/lib/apache2/fastcgi/
ディレクトリに inode/socket ファイルが存在する
FastCGI 関連の構成:
ディレクトリはand (が有効)/etc/apache2/mods-enabled/
への参照を保持します。fastcgi.conf
fastcgi.load
mod_fastcgi
このファイルfastcgi.conf
には次のものが含まれています (そのままにしておきます。編集はしていません)。
の関連する構成ファイルに/etc/apache2/sites-enabled/
は次のものが含まれています (FastCGI 固有の構成については他に何もありません)。
テスト仮想ホストのテスト マテリアル:
内容が次の が存在しfcgi-bin/test-perl.fcgi
ます (ファイルはすべてのユーザーが実行可能で、所有者とグループが読み取り可能です):
内容が次の が存在しfcgi-bin/test-python.fcgi
ます (ファイルはすべてのユーザーが実行可能で、所有者とグループが読み取り可能です):
問題
コマンドラインから実行すると と はどちらも正常に動作しますが、 や などのように呼び出された場合はどれも機能しfcgi-bin/test-perl.fcgi
ないようです。fcgi-bin/test-python.fcgi
http://test.loc/fcgi-bin/test-perl.fcgi
http://test.loc/fcgi-bin/test-python.fcgi
何も起こらず、少し遅れてエラー 500 が発生し、Apache エラー ログには次のような複数のエントリが含まれます。
なぜ機能しないのかを理解するために何時間もかけてウェブを検索しましたが、最終的にはあきらめて、ここで助けを求めることにしました.
任意のポインターとチェック リストを歓迎します。関連性があると思われる、または確認する価値があると思われる詳細が不足している場合は、お気軽にお問い合わせください。
素敵な一日をお楽しみください。
- 編集 -
問題の更新
私自身の質問に対する私自身の返信で、理由もなく突然正常に見えるという奇妙なケースについて言及しました。後で、これは部分的にしか問題がないことを発見しました。
同じ仮想ホストで、まったく同じサーバー構成を使用すると、場所によっては、まったく同じ (およびまったく同じアクセス権を持つ) 一部のスクリプトが失敗します。
残りとして、サイト構成の内容は次のとおりです。
以上で、 のスクリプトのみ/fcgi-bin
が FastCGI スクリプトとして扱われます。しかし、別の場所(まだテスト用) もいくつかあり/cgi-bin
ます。この目的のために、次のエントリが含まれています。/
public_html
.htaccess
したがって、他の 2 つの FastCGI スクリプトは のスクリプトと同じように機能するはずですが、そうではなく、当面は、最初のスクリプトと同様/fcgi-bin
に、常に接続タイムアウトで終了します。/fcgi-bin
これは、モジュールに何か問題があるのではないかと感じさせmod_fastcgi
ます (既知のバグ? 他?)。これまでのところ、このモジュールはかなりランダムに動作しているようです。
-- 編集 2 --
上記の最初の編集は、私の誤りでした。グループは他のスクリプトと間違っていました。そうでなければなりwww-data
ませんでしたが、そうではありませんでした。何かが間違っているので、私が与えた答えに固執してFastCgiConfig
ください。
python - Django はしばしば古いビューを返します
私は (プログラミングではなく) Web 開発にかなり慣れていませんが、本当に基本的な hello-world スタイルの Django アプリを (ある程度) 正常にデプロイできました。初めてやったとき、HTML に問題がありました。エラーのある私の全体像は次のとおりです。
最初の body タグの直後に余分な < があると、ブラウザに空白のページが表示されました。私は自分が何をしたかを理解し、エラーを修正しました。また、タイトルを追加したので、何が起こっているかを (多少) よく追跡できます。古いビューは次のようになりました。
現在、ブラウザーはほとんどの場合、古いビュー (空白のページ) を表示します。タイトルだけで本文が空白の場合もあれば、正しい新しいビュー全体が表示される場合もあります。何が起こっているのかわかりません。FastCGI を処理するために flup で nginx を実行しています。アイデア?
python - リクエストが nginx/flup で応答された後にバックグラウンド スレッドを実行するにはどうすればよいですか?
私のスタックは Nginx + Flup + Flask です。
したがって、寿命が有限のバックグラウンド スレッドを実行する有限のスレッドがあります。
実行され、約 1 ~ 2 分続き、終了します。問題は、応答性のために、バックグラウンド プロセスがまだ実行されている間に、最初にリクエストに値を返すようにすることです。
問題は、どういうわけか、fcgi スレッドが殺され続けることです。
connection_timeout を 1800 秒に変更してみました
nginxを再起動したところ、スレッドが応答した直後に切断されました。
どうすればいいですか
1)私のpythonコード/ fcgiコードを簡単に修正します(これは本当に簡単なプロジェクトであるため、redis/rabbitmq/celeryを使用して巨大な新しいスタックにリファクタリングする必要はありません)
2) nginx がスレッドを強制終了するのを、少なくともすぐには停止します。
ありがとう!
python - web.py のスレッド間でオブジェクトを共有するためのスケーラブルなソリューション (+ flup/fcgi)
web.pyのスレッド間でオブジェクトを共有する必要があります。計算を実行して値を返す Web サービスを実行しています。かなりの量のメモリを消費するオブジェクトを使用して計算が行われるため、リクエストごとに作成する必要はありません。
私は正常に動作するソリューションを持っていますが、スケーリングしていないようです:
web.pyは自動的に 10 個のスレッドを開きますが、この数は固定されており、非常に制限されています。それを変更できますか?
web.py インストール ガイドでは、flup + LightTPDやApacheなどのサーバーを使用することを推奨しています。必要な共有オブジェクト機能を保持したまま、これを行うことはできますか? 誰でも方法を教えてもらえますか?
flupをインストールし、サーバー起動時のコマンド ライン パラメータとして「 fcgi 」を追加しました。これにより、スレッド(無制限の数)に関して望ましい動作が得られましたが、もちろん、タスクは実行されませんでした。fcgiサーバーを定義する必要があると思います。LightTPDまたはApacheを実行せずにこれを修正できますか?
django - Django - Dispatch.fcgi はターミナルに正しい出力を表示しますが、ブラウザは未処理の例外につながります
Django-cms をインストールしたばかりで、共有ホスティングで FastCGI と flup を使用して Django を実行しています。ターミナルから「dispatch.fcgi」を呼び出すと、正しい html 出力が得られます。ただし、ブラウザーから自分の Web サイトにアクセスしようとすると、特定されていないエラーが発生します。
アプリケーションによって未処理の例外がスローされました。
./dispatch.fcgi を実行した場合のターミナルからの出力は次のとおりです。
等々
エラーログにエラーを書き込むif/elseステートメントをdispatch.fcgiファイルに追加しようとしましたが、ログは空です!
エラーが発生している場所の手がかりはありますか?「未処理の例外」に関する詳細情報を取得するにはどうすればよいですか?
編集:以下はdispatch.fcgiです: