サーバー管理者

システムおよびネットワーク管理者向けのQ&A

2
try_filesはどのように機能しますか?
私はnginxのドキュメントを見ましたが、それでも私を全く混乱させます。 どのように機能しtry_filesますか?ドキュメントの内容は次のとおりです。 NginxHttpCoreModuleから try_files 構文:try_files path1 [path2] uri デフォルト:なし コンテキスト:サーバー、場所 可用性:0.7.27 ファイルの存在を順番に確認し、見つかった最初のファイルを返します。末尾のスラッシュはディレクトリを示します-$ uri /。ファイルが見つからない場合、最後のパラメーターへの内部リダイレクトが呼び出されます。最後のパラメーターはフォールバックURIであり、存在している必要があります。存在し ない場合、内部エラーが発生します。書き換えとは異なり、フォールバックが名前付きの場所でない場合、$ argsは自動的に保持されません。引数を保存する必要がある場合は、明示的に保存する必要があります。 パスをどのようにチェックするのか理解できません。内部エラーを望まないが、別のファイルを見つけるためにパスの残りの部分を再開させる場合はどうすればよいですか? キャッシュされたファイルを試してみたい場合、/path/app/cache/url/index.htmlそしてそれが試せない場合、/path/app/index.phpどのように書くのでしょうか?私が書いた場合: try_files /path/app/cache/ $uri include /etc/nginx/fastcgi_params; fastcgi_pass unix:/var/run/php-fastcgi/php-fastcgi.socket; fastcgi_param SCRIPT_FILENAME $document_root/index.php; 私が持っていindex index.php index.html index.htm;ます。私が訪れたとき/urlname、それはチェックしようとし/path/app/cache/urlname/index.phpた後/path/app/cache/urlname/index.html?その後、すべてを無視すると、キャッシュフォルダーを確認try_filesできtry_filesますか?私はしようとして失敗しました。
72 nginx 

2
Red HatとCentOSのメジャーバージョン間でアップグレードするのがそれほど難しいのはなぜですか?
「既存の実稼働EL5サーバーをEL6にアップグレードできますか?」 環境がまったく異なる2人の顧客からのシンプルな要求により、「はい、しかしすべてのシステムを調整して再構築する必要があります」という私のベストプラクティスの答えが得られました。 両方のクライアントは、システムの完全な再構築がダウンタイムとリソースの理由から受け入れられないオプションであると感じています...システムを完全に再インストールする必要がある理由を尋ねられたとき、私はそれ以上の良い答えを持っていませんでした...」 構成管理(「すべてを人形化する」が常に当てはまるわけではありません)またはクライアントがどのように計画を立てるべきかについての応答を引き出すつもりはありません。これは、実稼働環境で成長し繁栄した環境の実例ですが、OSの次のバージョンに移行するための明確な道はありません。 環境A: 40 x Red Hat Enterprise Linux 5.4および5.5 Web、データベースサーバー、メールサーバーを備え、Java Webアプリケーションスタック、ソフトウェアロードバランサー、Postgresデータベースを実行する非営利組織。すべてのシステムは、それぞれがHA、DRSなどを備えた、異なる場所にある2つのVMWare vSphereクラスターで仮想化されます。 環境B: 生産取引業務を実行し、社内開発およびバックオフィス機能をサポートする複数のコロケーション施設に200 x CentOS 5.xシステムを備えた高周波金融取引会社。取引サーバーは、ベアメタルのコモディティサーバーハードウェアで実行されています。メッセージングレイテンシを低減するために、多数の、、割り込みバインディング、およびドライバー調整が用意されています。カスタムカーネルやリアルタイムカーネルを備えているものもあります。開発者ワークステーションも同様のバージョンのCentOSを実行しています。sysctl.confrtctl どちらの場合も、環境は現状のまま正常に動作しています。アップグレードしたいのは、EL6で利用可能な新しいアプリケーションまたは機能が必要だからです。 非営利企業にとっては、Apache、カーネル、および開発者を喜ばせるものに結びついています。 商社では、カーネル、ネットワークスタック、およびGLIBCのいくつかの機能強化について、開発者を満足させます。 どちらもオペレーティングシステムを大幅に変更せずに簡単にパッケージ化または更新できないものです。 システムエンジニアとして、Red Hatはメジャーバージョンリリース間を移動する際に完全な再構築を推奨しています。クリーンスタートでは、途中でリファクタリングを行い、構成に注意を払う必要があります。 クライアントのビジネスニーズに敏感であるため、なぜこれが面倒な作業である必要があるのでしょうか。RPMパッケージングシステムはインプレースアップグレードを処理する以上の機能を備えていますが、それ/boot以上の詳細はありません:より多くのスペース、新しいデフォルトファイルシステム、RPMが途中でアップグレード、非推奨、廃止されたパッケージを破壊する可能性があります... ここでの答えは何ですか?他のディストリビューション(.debベース、ArchおよびGentoo)には、この機能またはより良いパスがあるようです。このタスクを正しい方法で達成するためのダウンタイムを見つけたとしましょう。 EL7がリリースされて安定した場合、これらのクライアントは同じ問題を回避するために何をすべきですか? それとも、人々は数年ごとに完全な再建に辞任する必要があるのでしょうか? これは、Enterprise Linuxが進化するにつれて悪化しているように見えます...または、私はただそれを想像していますか? これにより、だれかがRed Hatおよび派生オペレーティングシステムを使用することを思いとどまらせましたか? 構成管理の角度があると思いますが、私が見るほとんどのPuppetインストールは、高度にカスタマイズされたアプリケーションサーバーのある環境にうまく変換されません(環境Bは、ifconfig出力がこのように見える単一のサーバーを持つことができます)。ただし、組織がRHELのメジャーバージョンバンプを克服するのに構成管理を使用する方法についての提案を聞くのは興味深いでしょう。

4
ChromeのSSLキャッシュをクリアするにはどうすればよいですか?
AWSのサイトのSSLを処理するHAProxy / stunnelサーバーがあります。テスト中に、このサーバー上で自己署名証明書を作成し、Chromeを使用してデスクトップからそれをヒットして、stunnelが正しく機能していることをテストしました。 これで、そのサーバーに正当な証明書をインストールしました。Chromeでマシンからサイトにアクセスすると、次のエラーがスローされます。 エラー113(net :: ERR_SSL_VERSION_OR_CIPHER_MISMATCH):不明なエラー。 私の推測では、Chromeは自己署名証明書のキーをキャッシュしており、正当な証明書のキーと一致していません。このサイトは私のマシンの他のすべてのブラウザで動作するため、Chromeの問題です。 興味深いメモ:シークレットセッション(Ctrl+ Shift+ N)からページにアクセスすると、正常に機能します。したがって、明らかに何らかのキャッシュのことです。 私は私が考えることができるすべてのものをやった(私のキャッシュをダンプした証明書の管理]ダイアログボックスで、個人や他の人々のページから本命を削除し、Ctrl+ F5など)。 私のマシンはWindows 7 x64です。Chromeバージョン:12.0.742.91。 Google Chromeヘルプフォームには、同じ問題のように思われるものの説明があります。ただし、解決策は見つかりません。 更新:今日は「修正済み」のようです。このような問題は嫌いです。何が原因で、どのように解決したのかはまだわかりません。おそらくキャッシュされた証明書の有効期限が切れているか何かですが、私はまだこの情報が保存されている場所と検証方法を知りたいと思っています。
72 ssl  cache  chrome 


11
ISPのDNSを使用するか、Googleの8.8.8.8を使用するかを選択するにはどうすればよいですか?[閉まっている]
GoogleのパブリックDNSを使用するように良いアイデアのように思える8.8.8.8し、8.8.4.4それは本当に速いですので-私自身のISPのDNSよりもはるかに速いです!-そしておそらくより信頼性も高い。それは私にとって途方もなく速い勝利のようで、覚えやすいのです。 私たちがすべてGoogleの「錫の帽子」ではないと仮定して、誰もがGoogle DNSを使用すべきではないのはなぜですか?どのDNSサーバーが最も速く、最も信頼性が高いか、または一般的に何が最適と見なされるかを判断するにはどうすればよいですか? 注:私はこの質問を見てきましたが、OpenDNSと比較したくありません。これは、家庭で日常生活を送る人々が日常的に使用することについてです。 更新:私はスズメバチのプライバシーの懸念の巣に手を入れたようです。私はこの問題に感謝していますが、もっと技術指向の議論を期待していました...



4
nginxでIPv4とIPv6の個別のlistenディレクティブが必要ですか?
nginxでデュアルスタックIPv4およびIPv6仮想ホストを処理するためのさまざまな設定例を見てきました。多くの人がこのパターンを提案しています: listen 80; listen [::]:80 ipv6only=on; 私が見る限り、これはまったく同じことを達成します: listen [::]:80 ipv6only=off; 前者を使用する理由は何ですか?私が考えることができる唯一の理由は、各プロトコルに固有の追加のパラメーターが必要な場合、たとえば、deferredIPv4 のみを設定したい場合です。
72 nginx  ipv6  ipv4 

4
Rsyncが転送されたファイルをchown'ingしないようにする方法は?
Linuxサーバー上のリモートファイルシステムとのsshfs接続セットアップがあります。ローカルサーバーからftpfs-filesystemへのRsyncを実行しています。このセットアップの性質のためchown、sshfsファイルシステムでは何もできません。 Rsyncを実行すると、すべてのファイルを転送した後、すべてのファイルをchownしようとします。これにより、ファイルは正常に転送されますが、chownエラーが発生します。 Rsyncを使用して、ファイルを試してみてはいけないことを伝える方法はありますか?1000個のファイルのようにrsyncを実行すると、1000個のchown: permission denied (error 13)エラーのログが作成されます。ファイルの所有権はsshfs構成自体によって決定されるため、これらのエラーを取得しても何の害もありません。しかし、それらを取得しないことは良いことです。
72 rsync  sshfs 


4
プロキシ経由のNginxリダイレクト、URLの書き換えと保存
Nginxでは、次のようにURLをリダイレクトしようとしました。 http://example.com/some/path -> http://192.168.1.24 ユーザーはブラウザに元のURLを表示したままです。ユーザーがリダイレクトされたら、へのリンクをクリックするとします。/section/index.htmlリダイレクトにつながるリクエストを作成するようにしたいと思います。 http://example.com/some/path/section/index.html -> http://192.168.1.24/section/index.html 再び元のURLを保持します。 私たちの試みには、プロキシと書き換えルールを使用したさまざまなソリューションが関係しており、ソリューションに最も近い構成を示しています(これはWebサーバーのWebサーバー構成であることに注意してくださいexample.com)。ただし、これにはまだ2つの問題があります。 Webサーバーhttp://192.168.1.24が受信した要求URLに含まれ/some/pathているため、必要なページの提供に失敗するため、書き換えは適切に実行されません。 ページが提供された後にリンクにカーソルを合わせると/some/path、URLに表示されません server { listen 80; server_name www.example.com; location /some/path/ { proxy_pass http://192.168.1.24; proxy_redirect http://www.example.com/some/path http://192.168.1.24; proxy_set_header Host $host; } location / { index index.html; root /var/www/example.com/htdocs; } } でウェブサーバーの設定を変更するだけのソリューションを探していますexample.com。構成を変更することもできます192.168.1.24(Nginxも)が、アクセスをプロキシする数百の異なるサーバーに対してこのセットアップを繰り返す必要があるため、これを試して回避したいと思いますexample.com。

7
ネストされたRDPセッションにCtrl-Alt-Delを送信します
最初のセッションがキャッチせずに、Ctrl-Alt-Delコマンドを別のRDPセッション(Windows Server 2008 R2)内のRDPセッション(Windows Server 2008 R2)に送信する方法はありますか? Ctrl+ Alt+ EndおよびCtrl+ Alt+ Shift+ Endは、第2レベルのセッションに到達しません。 編集: 最上位環境はWindows 7 Enterpriseです。


4
再起動せずにデフォルトのMac OSXルーティングテーブルをリロードする方法
ご挨拶、 vpncVPNクライアントに使用しています。またroute、ローカルネットワークなどに引き続きアクセスできるようにするために、いくつかのトリッキーなことも行っています(ここの詳細はあまり重要ではありません)。 ルーティングテーブルを取得することがあるので、ジャッキアップするとping: sendto: Network is unreachable解決しないURL を取得できます。 現在、Mac OS Xを再起動すると、すべてが正常に戻ります。システム全体をリブートせずに、ルーティングテーブルを「デフォルト」にリセットする(ブート時に設定するなど) ステップ1はroute flush(すべてのルートを削除する)と思います。そして、ステップ2はすべてのデフォルトルートをリロードする必要があります。 これを行う方法についての考えはありますか?(たとえば、ステップ2とは何ですか?) 編集 また、traceroute問題のアドレスで別の症状も失敗することに気づいています。例えば: traceroute the.good.dns.name traceroute: bind: Can't assign requested address

14
再起動せずにパーティションテーブルを再読み込みしますか?
ディスク上のパーティションのサイズを変更したり、いじくり回したりすると、cfdiskは次のように言います。 Wrote partition table, but re-read table failed. Reboot to update table. (これは、他のパーティション分割ツールで起こるので、私は、これは、Linuxの問題ではなく、cfdiskの問題であると思っています。)これはなぜある、そしてなぜそれが唯一起こるん時々、私はそれを避けるために何ができるのでしょうか? 注:私が実際に編集しているパーティションは、開かれていない、マウントされていない、または使用されていると仮定してください。 更新: cfdiskはioctl(fd, BLKRRPART, NULL)、パーティションテーブルを再読み込みするようLinuxに指示するために使用します。これまでに推奨された他の2つのツール(hdparm -z DEVICE、sfdisk -R DEVICE)はまったく同じことを行います。partprobe DEVICEこのコマンドは、他の一方で、良いかもしれないBLKPGと呼ばれる新しいIOCTLを使用しているようです。知りません。(BLKPGが失敗すると、BLKRRPARTにフォールバックします。) BLKPGは「このパーティションが変更されました。これが新しいサイズです」操作のようpartprobeで、渡されたデバイス上のすべてのパーティションで個別に呼び出されるように見えたので、個々のパーティションが使用されていない場合は動作するはずです。しかし、私はそれを試す機会がありませんでした。
71 partition  fdisk  linux 

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