2012-03-02 11 views
6

私はもともとapt-get installでnginxをインストールしました。それはうまく動作します。さて、私はいくつかのサードパーティのモジュールをインストールしたいと思いますし、nginxを再コンパイルする必要があります。だから私は再コンパイルを試みた。それは動機を経て、私の元のバージョンはまだ使用されていたものであることに気付きました。apt-get install nginxを使ってnginxを再コンパイルする

nginxの元のコピーをアンインストールしてから、もう一方を正しくインストールする必要がありますか? --confパス=の/ etc/nginxの/ nginx.conf --error-ログパス=は/ var/log/nginxの/ error.logに--pid-パス:インストール用

私の旗=/var/run/nginx.pid - ロックパス=/var/lock/nginx.lock --http-log-path =/var/log/nginx/access.log --http-client-body-temp -path =/var/lib/nginx/body --http-proxy-temp-path =/var/lib/nginx/proxy --http-fastcgi-temp-path =/var/lib/nginx/fastcgi --with -debug --with-http_stub_status_module --with-http_flv_module --with-http_ssl_module --with-http_dav_module --with-http_gzip_static_module --with-http_realip_module --with-mail --with-mail_ssl_module --with-ipv6 --add -module =/usr/src/gnosek-nginx-upstream-fair-5f6a3b7 --add-module =/usr/src/mod_strip

答えて

1

最初にapt-getバージョンをアンインストールすることをお勧めしますが、将来的には、apt-get updateやそれに類するシステムアップデートを使用してカスタム再コンパイルを不注意に行うことは避けてください。

再コンパイルがうまくいかない理由がいくつかあります。インストーラは既存のファイルを上書きするための適切な権限を持っていますか? .configureはコンパイルされたバイナリをapt-getと同じ場所に置いていますか? (--sbin-path = /どこにあるか、/config/sbin/nginxでなくても.configureにインストールする)再コンパイル時にnginxが実行されていましたか?インストーラは、開いているファイルを上書きすることができない場合があります。 (あなたはnginxを再起動しましたか?)多分何か他のものかもしれませんが、それは私が探し始める場所です。

+0

当時は間違いなくnginxを実行していました。私はそれ以来数回それを再開しました。私は実際にapt-getのためにsbin-pathが何であったかを確かめていません。どうすれば確認できますか?インストーラに権限を与えるにはどうすればいいですか? – Kristian

+0

'whereis nginx'を使うと、現在のバイナリがどこにあるのかを知ることができます(ただし、何か変更されていない限り、/ sbin/nginxの可能性があります)。インストーラの権限は、ビルドを実行しているユーザーと、インストールされているバイナリを所有しているユーザーによって異なります。両方が同じであれば問題ではありません。ほとんどの場合、sudoを使用するだけで十分です。 –

+0

ああ、実際には/ usr/sbin/nginxにあります。また、私は根源です。 – Kristian