LINUX.ORG.RU
ФорумAdmin

need nginx rewrite help. нужна помощь в переводе

 ,


0

1

Поможите чем можите.

Есть одна связка nagios + nagvis. Родная она крутится на модпхп апача.

Есть желание ее перевести на nginx+fcgi+php-fpm.

Скажем так сам нагиос перенести удалось, ибо реврайтов у него таки нет.

У nagvis-а реврайтов много, честно скажу - ниасилил.

Прошу помощи.

[root@localhseNagios conf.d]# cat /etc/httpd/conf.d/nagvis.conf
Alias /nagvis "/usr/share/nagvis/share"

<Directory "/usr/share/nagvis/share">
  Options FollowSymLinks
  AllowOverride None
  Order allow,deny
  Allow from all

  <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /nagvis

    RewriteCond %{REQUEST_URI} ^/nagvis/frontend/(wui|nagvis-js)
    RewriteCond %{QUERY_STRING} map=(.*)
    RewriteRule ^(.*)$ /nagvis/frontend/nagvis-js/index.php?mod=Map&act=view&show=%1 [R=301,L]

    RewriteCond %{REQUEST_URI} ^/nagvis/frontend(/wui)?/?(index.php)?$
    RewriteRule ^(.*)$ /nagvis/frontend/nagvis-js/index.php [R=301,L]

    RewriteCond %{REQUEST_URI} ^/nagvis/frontend/nagvis-js
    RewriteCond %{QUERY_STRING} !mod
    RewriteCond %{QUERY_STRING} rotation=(.*)
    RewriteRule ^(.*)$ /nagvis/frontend/nagvis-js/index.php?mod=Rotation&act=view&show=%1 [R=301,L]
  </IfModule>
</Directory>

<IfModule mod_php5.c>
  php_value date.timezone = "Europe/Paris"
</IfModule>


Последнее исправление: cetjs2 (всего исправлений: 1)

location ~ ^/nagvis/(.*\.php$) { root /usr/share/nagvis/; include /etc/nginx/fastcgi_params; fastcgi_pass php; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nagvis/$fastcgi_script_name; }

location /nagvis/ { root /usr/share/nagvis/; try_files $uri =404; }

Cкрипты и прочий хтмл лежат в /usr/share/nagvis/nagvis/ Вариант топорный без удобочитаемых ури, но вроде работает. Ответил лишь п.ч. гуглил сам на эту тему. И до ума еще не довел, но так работает.

anonymous
()

Рабочая конфигурация [Fully working nagvis nagios]

Предыдущее сообщение мое, его не смотреть :)
Возможно, можно было бы сделать красивее конфигурацию nginx, но это работает точно.

######################
# NAGVIS SECTION
######################

        location /nagvis/ {
                alias /usr/share/nagvis/share/;
        }

        location /usr/share/nagvis/share/ {
                root /usr/share/nagvis/share/;
        }

        location ~ ^/nagvis/(.*\.php$) {
                root /usr/share/nagvis/share/;
                include /etc/nginx/fastcgi_params;
                fastcgi_pass php;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME /usr/share/nagvis/$fastcgi_script_name;
        }

SolarFly
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.