タグ付けされた質問 「nginx」

Nginx( "eNgine x")は、軽量で高性能なHTTPサーバー、リバースプロキシ、TCPストリームプロキシ、メールプロキシで、BSDライクなライセンスの下でリリースされています。

1
サーバーのadd_headerディレクティブを上書きする場所のadd_headerディレクティブ
使用nginxの1.2.1を私が使用して複数のヘッダを追加することができる午前add_header、次のように: server { listen 80; server_name localhost; root /var/www; add_header Name1 Value1; <=== HERE add_header Name2 Value2; <=== HERE location / { echo "Nginx localhost site"; } } 結果 GET / HTTP/1.1 200 OK Name1: Value1 Name2: Value2 ただし、add_header内部locationでディレクティブを使用するとすぐに、add_header下の他のディレクティブserverは無視されます server { listen 80; server_name localhost; root /var/www; add_header Name1 Value1; …

1
仮想ホストごとのログファイルに書き込むようにNGINX経由でPHP-FPMを構成する方法
Fedora 16にはNginxとPHP-FPMがあります。すべてが非常にうまく機能しています。PHPの通知、警告、エラーなどのログはすべてにあり/var/log/php-fpm/www-error.logます。 Nginxのエラーログとして設定された適切なログファイルにエラーを書き込むようにPHP-FPMを設定する方法はありますか?そのため、1つのグローバルファイルではなく、仮想ホストごとに PHPエラーを記録します。(Apache HttpdやPHPなど)。
11 linux  nginx  logging  php-fpm 


1
nginx:[emerg]不明なディレクティブ“ http”
そのようなコードを作成しようとすると: 1. http { 2. script 3. server { 4. ... 5. location ... 6. } 7. } エラーが発生します: nginx: [emerg] unknown directive "http" in /etc/nginx/conf.d/nginx.conf:1 コードが次のような場合: 1. server { 2. ... 3. location ... 4. script 5. } 6. server { 7. ... 8. location .... 9. script 10. …
11 nginx  http 

2
nginxのデフォルトホストを設定するにはどうすればよいですか?
私はnginxインストールのデフォルトホストを設定する方法を見つけようとしています。私はnginx Wikiでこの記事を見つけました: http://wiki.nginx.org/NginxVirtualHostExample#A_Default_Catchall_Virtual_Host 残念ながら、これは機能しません。再起動後、私はこれを取得します: Restarting nginx: nginx: [emerg] unknown directive "http" in /etc/nginx/sites-enabled/catchall:1 nginx: configuration file /etc/nginx/nginx.conf test failed httpディレクティブを削除した後、私はこれを取得します: Restarting nginx: nginx: [emerg] unknown log format "main" in /etc/nginx/sites-enabled/catchall:7 nginx: configuration file /etc/nginx/nginx.conf test failed 私は公式のnginx PPAを使用しているUbuntu 10.04.3を使用しています。nginxのバージョン1.0.9が実行されています。
11 ubuntu  nginx 

3
NginxはHAProxyの前にあるべきですか、それとも反対ですか?
私は、ウェブサイトのインフラストラクチャーアーキテクチャー設計の経験がほとんどありません。私はそれが特定の状況であるかもしれないことを知っています。Webサイトは次のことになっています。 1)一部のページ(ログインページなど)に対してHTTPSサポートが必要で、他のページは単にHTTPページです。 2)複数のWebサーバーが必要であるため、負荷分散が必要です。 3)パフォーマンスを向上させるには、HTTPキャッシングと圧縮が必要です。 4)一部のリクエスト(画像のアップロードなど)は、専用のバックエンドサーバーにルーティングする必要があります。そのため、URLベースのバランスが必要です。 NginXとHAProxyは、どちらもオープンソースのリバースプロキシやロードバランサーとして優れていることを知っています。HAProxyはSSLをサポートしていないため、Nginxの負荷分散はHAProxyほど優れていません。私は両方を取ります。 Nginx(リバースプロキシとして)をHAProxyの前に(ロードバランサーとして)または反対に配置する必要がありますか? ありがとう

3
いつNGinxに切り替えるべきですか?
Apacheを介して、いくつかのドメインとアプリケーションが実行されているサーバーがあります。現時点ではすべてが順調ですが、テスト用にサーバーから始め、準備ができたらこのアプリケーション専用のサーバーを取得するなど、パフォーマンスを集中的に使用するWebアプリケーション(CPPCMSでC ++を使用)を開発する計画があります。 とにかく、Apacheよりもパフォーマンスが高いと思われるNGinxについて多くのことを聞いたので、その新しいプロジェクトで作業する価値があるかどうかを自問していました。NGinxがどのようなパフォーマンスのボトルネックを正確に修正するのかわからないので、私の頭の中では明確ではありません。 私はApacheのパワーユーザーではなく、貧弱なLinux管理者であり、Webアプリをあまり開発していません(しかし、概念はあります)。私は主にソフトウェアの作成に専念しているため、Webサーバーの部分は非常にわかりにくい場合があります。apachを使用してWebサイトを構成する必要があるたびに、すべてを壊さないようにドキュメントを参照するのに多くの時間が必要です。 そうは言っても、私はこの面でかなり良くなっていると思うが、まだアドバイスが必要だ。私はいくつかのnginx設定ファイルを見てきましたが、それはApacheのものよりもはるかに理解しやすいようですが、おそらく間違っていますか? 私が収集した情報から、NGinxはロードバランシングが必要な場合に最適な選択肢です。したがって、アプリケーションを複数のマシンに分散させる場合は正しいでしょうか。私はスケーリング(およびパフォーマンス)のアプリケーションを考えているので、必要なもののように見えますが、ApacheからNGinxに移行するのがいつ面白いかについてもっと知る必要があるかもしれません。現在のすべてのアプリでもNGinxに切り替える価値はありますか?それはどれくらいしますか?(つまり、一方から他方に切り替えるのに時間がかかりますか?)ApacheとNGinxの両方を同じマシンで問題なく使用できますか? サイドノート:C ++の代わりにインタープリター言語を使用するように促さないでください。質問とは関係ありません。参照してくださいCPPCSM根拠のページをそれfromt種類のアプリケーションのどのような利益をもたらすことができます参照してください。欠点(RubyやPythonのアプリと比較して、電力消費量の少ないWebアプリで既に使用している)を完全に理解しており、それで問題ありません。
11 apache-2.2  nginx 

4
ApacheにはNginxに何が欠けていますか?
Nginxは、Apacheよりもはるかにリソース効率が高く、構成が簡単であると言われています。友人から「Apacheでできることはできませんが、とにかくそれらは必要ありません」と言われました。 それでも、私は好奇心が強いです:NginxができないApacheにはどのようなことができますか?完全なリストは必要ありませんが、Apacheがより良い選択になるシナリオの一般的なアイデアが必要です。
11 apache-2.2  nginx 


5
Nginx-すべてのリクエストを単一のスクリプトにルーティングします
スクリプトルーティングを処理し、あらゆる種類の派手なことを行うPHPスクリプトがあります。元々はApache用に設計されていましたが、いくつかのボックスのためにnginxに移行しようとしています。今、私はテストサーバーで物事をスムーズにしようとしています。 したがって、スクリプトの動作方法は、.htaccessファイルを使用して(Apache内の)ディレクトリのすべてのHTTPトラフィックをインターセプトすることです。これは次のようなものです。 <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^.+$ index.php [L] </IfModule> とても簡単です。すべてのリクエストはindex.php、単純でシンプルに実行されます。 私はnginxでその動作を模倣したいと思っていますが、まだ方法が見つかりません。誰か提案がありますか? nginx.conf現時点での私のファイルのコピーです。それが私がそれをただ動かそうとするのを試みるために設計されたことに注意してください。主にコピー/貼り付けジョブ。 user www-data; worker_processes 1; error_log /var/log/nginx/error.log; pid /var/run/nginx.pid; events { worker_connections 1024; # multi_accept on; } http { include /etc/nginx/mime.types; default_type text/plain; include /etc/nginx/conf.d/*.conf; server { listen 80; server_name swingset.serverboy.net; …
11 php  nginx 


2
Nginx-Cookieのないドメインから静的コンテンツを提供する
Firebugの「ページ速度」拡張機能を使用してWebサイトを最適化しようとしていますが、現在、「Cookieのないドメインから静的コンテンツを配信する」という提案に取り組んでいます。 私が持っているように、私はいくつかのコンテンツを別のサブドメインを作成しているwww.example.comし、images.example.comどのように私はそれが指定んが、images.example.comクッキーレスのですか?NginxやApacheなどのWebサーバーでCookieがないことを強制できますか、それとも単にサーバーサイドコード(PHPなど)でこのドメインにCookieを設定しないようにするだけですか? 私が尋ねる理由は、「ページスピード」が修正を試みた後でも同じ推奨事項を示しているためです。したがって、一部のCookieがすり抜けたに違いないと思います。ブラウザのCookie検索でCookieが表示されませんが、リソースのHTTPヘッダーを調べると表示されます: Cookie __utma=73051794.676740941.1271792323.1277710025.1277900715.20; __utmz=73051794.1271792323.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utmx=73051794.00009825591030858779:3:0; __utmxx=73051794.00009825591030858779:2295429:2592000; __gads=ID=0a768e3407302ff8:T=1272608001:S=ALNI_MZ-GKhg3ETniU0TVftk0DdGyUypkQ サブドメインからのCookieを停止する方法を知っている人はいますか?

5
nginxエラーログは巨大だったので、削除して新しいものを作成しましたが、nginxは起動しません
/var/log/nginx/error.logファイルを削除し、次を使用して新しいファイルを作成しました。 sudo nano error.log やってls -laいることを示しているのはerror.logとのaccess.logが同じ権限を持っています。 nginxを起動しようとすると、エラーが発生します。 アラート:エラーログファイルを開くことができませんでした:open() "/var/log/nginx/error.log"許可が拒否されました。 更新 nginxを起動しようとすると、私も見ています: emerg:/var/run/nginx.pidが失敗しました13:許可が拒否されました。

2
nginxがリバースプロキシとして構成されている場合、ホストヘッダーをApacheのProxyPreserveHostのようなダウンストリームサーバーに書き換えることはできますか?
ApacheのProxyPreserveHost http://httpd.apache.org/docs/2.0/mod/mod_proxy.html#proxypreservehostオプションに相当するものがnginx で見つからないようです。これは、仮想ホストへのリバースプロキシに必要です。 ブラウザーが提供するホスト名をダウンストリームサーバーのホスト名に置き換えます。 存在しますか?

1
Nginx Gzip Precompressionモジュールが機能しないのはなぜですか?
私は現在、すべての静的ファイルを提供するためにNginxをセットアップしようとしています。あまり頻繁に変更されないので、gzip_staticモジュールを使用して、ファイルのコピーを事前にgzipして、CPU時間を節約し、圧縮率を高めたいと思います。 Nginxをコンパイルし--with-http_gzip_static_moduleて、静的ファイルを提供するように設定しました。これまでのところ問題ありません。テストして静的gzippingが実際に機能していることを確認したかったので、2つのファイルを作成test.txtしましたtest.txt.gz。各ファイルの最初の行は、それらがgzipされたかどうかを示し、次に改行と256のランダムな文字があります(2つのファイル間で異なります)。 ファイルの変更時刻とgzip圧縮されたファイルの変更時刻は同じであることを確認しました。次の両方を試しました。 touch test.* touch -r test.txt test.txt.gx 私のローカルマシンでは、curlを使用してテストしています。 curl $URL/test.txt これはうまく機能し、事前に圧縮していないバージョンを返しますが、これを行うと: curl -H "Accept-Encoding: gzip" $URL/test.txt | gunzip 私はまた、私は予備圧縮しませんでしたバージョンを取り戻します。に設定gzip offしてみましたnginx.confが、違いはありません。私もNginxを再コンパイルしましたが--without-http_gzip_module、それでも違いはないようです。Nginxは、その場でgzip自体をgzipします。 私はNginxを初めて使用しますが、ここでは本当に困っています。 これはの出力です ./nginx -V built by gcc 4.4.6 20110731 (Red Hat 4.4.6-3) (GCC) configure arguments: --sbin-path=$SOMEPATH/nginx --prefix=$SOMEPATH --user=$ME --group=$MYGROUP --with-http_gzip_static_module --without-http_gzip_module そして、これが私の nginx.conf worker_processes 1; events { worker_connections …
11 nginx  gzip 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.