問題タブ [apache2-module]
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.
apache2 - Apache2 の FallbackResource (2.2.22 (Ubuntu))
いくつかの「エイリアス」が配置されているため、Apache vhosts をクリーンアップしようとしていますが、それらすべてを mod_rewrite に入れるのは面倒です。ただし、特定の URL ( http://example.dev/robots.txt、http://example.dev/など) には単独でアクセスできますが、vhost はリストされた URL にフォールバックしません ( FallbackResource /index.php
)。
vhost は Zend Framework プロジェクトのコンテナーであり、.htaccess ファイルは設定されていません。
アクセス ログにはが表示されます.... "GET / HTTP/1.1" 302 0
が、Google Chrome には「データが受信されていません」と「エラー 324 (net::ERR_EMPTY_RESPONSE): サーバーはデータを送信せずに接続を閉じました」と表示されます。
ただし、行をコメントアウトし、ベースの mod_rewriteFallbackResource
を再度有効にすると、期待どおりに機能します。<Location />
編集:仮想ホストには、動作を停止するものは何もありません。いくつかのAlias
行 (FallbackResource が動作するはずの行) とFilesMatch
、特定の拡張子を持つファイルへのアクセスを停止するための行です。ログに表示されるのは、index.php (リストされたリソース) ではなく、URL に移動しようとしたときの 404 だけです。
c - `request_rec`からヘッダー値を取得できません
問題
カスタムApacheモジュールのヘッダーの値を取得したい。(ヘッダーはPOSTリクエストの一部として提供されます。)私はこれを行っています:
しかし、これは与えてmyHeader = NULL
います。
詳細
私はmyHeader
ここを使用しています:
query
DBを使用してフォーマットquery_template = "call GetDelay('%s', %d)"
され、DB上で実行されます。DBは、実行されたクエリをとして表示しますGetDelay('(null)',2)
。
ヘッダー値を取得する方法は?または私の間違いは何ですか?
perl - Apache :: Request(古いperl / apache)はHTTP :: Request(新しいperl / Apache)と同じですか?
こんにちはPerlの戦士。
私はこの言語にまったく慣れておらず、元々Apache 1.3(および古いPerl)用に作成されたアプリケーションをApache2.2.xおよびmod_perlを使用してRHEL/CentOS6に移植するという興味深いプロジェクトに携わっています。
libの呼び出しに関して:
は
Apache :: Request(古いperl / apache)はHTTP :: Request(Apache2、mod_perl)と同じですか?
さらに、誰かがperlのアップグレード/移植プロジェクト中に特に役立つとわかったリソースを持っているなら、それは大いにありがたいです。
servlets - Apache2 で Restlet を使用する
私は初心者です。シンプルな単一ページの Web アプリケーションを構築しようとしています。
今のところ、Apache 2 httpサーバーを使用してフロントエンドのもの(html/js/css/imgs ..)を提供し、ポート8015でRestlet2.0を使用するjarを使用して、フロントエンドからのAjax呼び出しにAPISを提供しています
現在、Apache はポート 80 を使用しており、Restlet はポート 8015 を使用しているため、すべてのクロスドメイン ヘル ブレークが失われる ajax 呼び出しで絶対アドレスを使用する必要があります。
Apache 2 を Restlet で動作させるにはどうすればよいでしょうか? 私はたくさんグーグルで検索してきましたが、有用な結果はあまりありませんでした。すべての API 呼び出しを Restlet に転送し、Apache 2 の優れた機能を利用するにはどうすればよいですか?
apache2 - Apache 2.4.x 帯域幅クォータ/スロットル/速度
帯域幅クォータを構成できる新しい Apache 2.4.x モジュールまたはソリューションを探しています。ずっと前に、1.3 でのみ機能する mod_throttle を使用しており、それ以降はメンテナンスされていません。また、Apache 2.4 で動作するようにパッチを適用した mod_cband も使用しており、機能しているように見えますが、将来の Apache のアップグレードによってこのソフトウェアも消滅する可能性があるのではないかと心配しています。また、mod_cband もメンテナンスされていないようです。
私は mod_bandwidth を見てきましたが、それは 1.3.x でのみ機能するように見え、mod_ratelimit は私が探していることを正確には実行しません。
具体的には、仮想ホストごとに最大クォータを設定する方法を探しています。その制限に達すると、接続が遅くなるか、エラーが表示されます。クォータは、定義済みのキー (IE: 30 日、2 時間など) に基づいて自動的にリセットされるように構成する必要があります。
どんなガイダンスでもいいでしょう。デモができる限り、有料のソフトウェアも問題ありません。もちろん、オープンソースのソリューションが最適です =)
付け加えておきますが、これは Windows ではなく Unix/Linux 向けであるべきです!
apache - Apache2モジュールを開発しています。サービスの起動時にcreate_server_configが2回呼び出されるのはなぜですか?
私は次のようにモジュールコードを書きました:
Apacheを再起動すると、には次のもの/var/log/syslog
が含まれます。
create_server_config
関数が2回呼び出されるのはなぜですか?
この関数でいくつかのグローバル変数をmallocします。それは安全ですか?
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
ください。
php - mod_userdir を使用して、すべてのユーザーの public_html に PHP の open_basedir を設定します。
public_html
次のように、を介して各ユーザーのディレクトリにアクセスできるApache 2 Webサーバーがありますmod_userdir
。
open_basedir
ユーザーのホームディレクトリ外のファイル アクセスを禁止するように、PHP のディレクティブを追加で構成したいと考えています。userjim
の場合、ディレクティブは次のようになります
質問: Apache は、上でマークされた場所の変数を介してこれを行う方法を提供してい[*]
ますか? 次のようなものですか?
apache2 - mod_proxy_uwsgi または mod_uwsgi をコンパイルするには?
そのため、apache2 の背後で uwsgi を使用しようとしていますが、CentOS 6 マシンで使用しています。(私はコンテキストのために Debian/Ubuntu ベースのシステムに慣れています。)
pip install uwsgi
Django アプリケーションで uwsgi を起動するための指示に従いました ( http://uwsgi-docs.readthedocs.org/en/latest/WSGIquickstart.html経由)。
http://uwsgi-docs.readthedocs.org/en/latest/Apache.htmlに従って apache2 の構成を開始しましたが、mod_uwsgi または mod_proxy_uwsgi を入手する場所やビルド方法については何も述べていません。mod_uwsgi.so は間違いなくシステムのどこにもありません。助言がありますか?
c++ - apache2 モジュールからの HTTP リクエストの作成 (c++)
私の c++ で書かれた apache2 モジュールは問題なく動作し、ブラウザ クライアントからの「page.xyz」のような要求を処理し、適切な結果を返すことができます。
ここで必要なのは、モジュールを別のサーバーへのクライアントとして使用することです: HTTP (GET) リクエストを作成し、レスポンスを取得します (GET https://graph.facebook.com/oauth/access_token?.. .)。
apache にはこれを行う魔法がありますか、それともソケットを処理して HTTP パケットを手動で作成する必要がありますか? これを行う最善の方法は何ですか?
どうもありがとう!