この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 12629|答える: 0

[ウェブ] Nginxのセルフスタート失敗

[リンクをコピー]
掲載地 2015/05/30 23:46:28 | | |

リノードがまたアップグレードされました~でも、日本のパソコン室の古いマシンはアップグレードに数週間かかるので、待ちきれず、新しいマシンを開いて実家に引っ越すつもりで、サーバーの不要なゴミも片付けるつもりです。

新しいマシンは私が自分で書いたLNMPワンクリックインストールスクリプトを使っています(実際、ほとんどのコードはオンラインで見つかります==##)、DigitalOceanでスクリプトを作成した後、Linodeにインストールしました。 インストールや移動には問題はありませんでしたが、インストール後に再起動した途端に問題が発生しました。


再起動後は自動的に起動するはずですが、長い間待ってもウェブサイトにアクセスできません。 SSHにログインして実行してください:

サービスNGINX START

Nginxを手動で起動すれば、ウェブサイトはすぐにアクセスできるようになります。 自己起動スクリプトは問題なく、手動起動にも問題はありません。なぜnginxは起動しないのでしょうか?

ログを見てみると、こんな文が見つかった。

2014/05/02 17:02:28 [緊急] 2912#0: bind() to [2400:8900::f03c:91ff:fe6e:5889]:80 failed (99: リクエストされたアドレスを割り当てられない)

Nginxを起動したときにipv6が初期化されていないように感じ、起動が失敗したように感じます。 SSHにログインして手動でNginxを起動すると、IPv6はすでに初期化されているので、通常通り起動できます。

おそらく理由は推測していますが、どうやって解決すればいいのでしょうか? 長い一日でGoogle検索した後、ServerFaultで似たような問題と解決策を見つけ、ここに記録します。

/etc/sysctl.confに挿入:
  1. sysctl -w net.ipv6.conf.eth0.dad_transmits=0
コードをコピーします
又は:

/etc/network/interfacesにラインを追加:
  1. post-up while ip -6 addr show tentative | grep . > /dev/null ; do sleep 1 ; done
コードをコピーします
私は後者の方法を使って問題を解決します。




先の:ディクズについて! (X3.1) https暗号化を有効にする方法
次に:ホウプカップ参加プロジェクト
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com