搜尋

首頁  >  問答  >  主體

ubuntu - 透過 passenger-install-nginx-module 安裝的 nginx 和直接安裝的 nginx 有什麼不同?

係統中的 nginx 是這樣安裝的

sudo apt-get install nginx

安裝了passenger後

gem install passenger

還需安裝nginx module才能在nginx中配置使用它。在安裝時

passenger-install-nginx-module

提示

Automatically download and install Nginx?

Nginx doesn't support loadable modules such as some other web servers do,
so in order to install Nginx with Passenger support, it must be recompiled.

Do you want this installer to download, compile and install Nginx for you?

 1. Yes: download, compile and install Nginx for me. (recommended)
    The easiest way to get started. A stock Nginx 1.4.4 with Passenger
    support, but with no other additional third party modules, will be
    installed for you to a directory of your choice.

 2. No: I want to customize my Nginx installation. (for advanced users)
    Choose this if you want to compile Nginx with more third party modules
    besides Passenger, or if you need to pass additional options to Nginx's
    'configure' script. This installer will  1) ask you for the location of
    the Nginx source code,  2) run the 'configure' script according to your
    instructions, and  3) run 'make install'.

Whichever you choose, if you already have an existing Nginx configuration file,
then it will be preserved.

【問題1】這樣再次安裝nginx的話,和原來的版本沒有衝突嗎?

直接安裝的nginx的啟動方法是

sudo service nginx start
sudo service nginx restart
sudo service nginx stop

通過 passenger-install-nginx-module 安裝的nginx的啟動方法是

sudo nginx
sudo nginx -s reload
sudo nginx -s stop

【問題2】為什麼會有這樣的區別呢?

【問題3】在已經存在nginx的係統中,有其它方式安裝passenger的nginx module嗎?

PHP中文网PHP中文网2777 天前866

全部回覆(2)我來回復

  • 阿神

    阿神2017-04-22 08:57:48

    1. 這兩種啟動方式本身來說,對於nginx沒太大差別,只是前者使用系統統一的service腳本來啟動的。但是基於你的安裝方式,我不太確定兩者是否使用的同一個nginx安裝。判斷方式:查看一下 /etc/init.d/nginx 這個腳本的內容,看看大概22行左右,看看nginx路徑設定是多少,是否和你第二種直接啟動的nginx是一個路徑。另外再看看NGINX_CONF_FILE路徑是否一致

    2. 沒有為什麼。你可以不使用service方式,直接nginx指令操作,但是前者比較方便,管理上比較統一。 Linux開機自動啟動一般也會呼叫service腳本。

    3. 可以,但是還是必須經過重新編譯的過程。但你需要知道前一次安裝nginx的原始碼在哪裡(自己編譯安裝的好說;你用apt-get安裝的話,我就不知道會不會保留原始碼了),知道原始碼位置的話,在你上面節錄的「Automatically download and install Nginx?」的時候,選擇2. No: I want to customize my Nginx installation.,然后安装脚本会让你选择之前源代码位置,增加之前configure的参数(nginx -V可以看到),根據提示再來一遍就可以了。

    你根據1的判斷,兩個nginx要是實際路徑是一個的話,就沒關係了,啟動的話還是建議直接用service腳本。

    回覆
    0
  • 迷茫

    迷茫2017-04-22 08:57:48

    • 透過 passenger-install-nginx-module,安裝的 nginx和原來是沒有衝突的,相當於在別目錄又裝了一個 nginx。

    • 之所以有這樣的差異是因為一個服務啟動腳本,一個直接是程式。

    • 已經安裝 nginx 的系統絕對可以安裝 passenger

    你多看看文檔,這樣的問題沒有必要問得。

    回覆
    0
  • 取消回覆