Как мне перекомпилировать nginx - PullRequest
2 голосов
/ 23 февраля 2012

Я настраиваю новый сервер (мой первый!).

Я установил Passenger и использовал passenger-install-nginx-module для установки nginx. Впоследствии я настроил его, и все это работает.

Однако мое приложение - Rails 3.1 и поэтому использует конвейер ресурсов, и я не осознавал, что мне нужна библиотека PCRE

nginx: [emerg] using regex "^/(assets)/" requires PCRE library in /opt/nginx/conf/nginx.conf:89

Это нужно, чтобы в nginx.conf работало следующее:

location ~ ^/(assets)/  {  
  root /path/to/public;  
  gzip_static on; # to serve pre-gzipped version  
  expires max;  
  add_header  Cache-Control public;  
} 

Я установил PCRE

sudo apt-get install libpcre3 libpcre3-dev

Теперь, когда я добавил это, я считаю, что необходимо перекомпилировать nginx.

Я видел несколько сообщений в блоге / справку nginx о том, как его перекомпилировать, но я действительно n00b. Может кто-нибудь подсказать мне пошаговые инструкции?

Спасибо!

Ответы [ 3 ]

1 голос
/ 25 февраля 2012

Если я правильно помню, вам нужно только перекомпилировать nginx. Поскольку вы скомпилировали nginx перед установкой PCRE, nginx не может общаться с PCRE.

Вы можете найти аргументы конфигурации, написав

> nginx -V

Скопируйте ваши аргументы: и перекомпилируйте nginx, выполнив это

  1. Перейдите в папку загрузки nginx
  2. > ./configure [здесь приводятся ваши аргументы конфигурации]
  3. > make
  4. > sudo make install

Если это не работает, попробуйте добавить --with-pcre = [путь к pcre] в аргументы конфигурации

Надеюсь, это сработает;)

1 голос
/ 30 мая 2012

Данные ответы не будут работать, потому что вы пытаетесь использовать Nginx с Passenger, а для Nginx требуется также скомпилированный модуль Passenger.

Простой запуск passenger-install-nginx-module снова перекомпилирует nginx для вас. Если этого не произойдет, вы можете попробовать rm -r в / opt / nginx (это местоположение по умолчанию, в которое nginx установлен Пассажиром). Обязательно сделайте резервную копию вашего /opt/nginx/conf/nginx.conf, если вы его цените.

Если вы используете автономный пассажир и вам нужно его перекомпилировать, удалите ~ / .passenger / YOUR-MOST-RECENT-INSTALL и просто снова запустите запуск пассажира.

0 голосов
/ 23 февраля 2012
...