Задать вопрос
  • Антиспам для энтерпрайза?

    @navion
    Никто не запрещать попробовать и сравнить решения, я бы начал c Касперского, который должен лучше справляться с местным спамом (всё никак руки до него не дойдут) и заметно дешевле иностранцев (Symantec и Trend Micro стоят как IronPort).
    Плюс у него есть интеграция с Exchange, так что можно заменить внешний линуксовый гейт на Edge Transport с Kaspersky.
  • Подружить Symfony и nginx?

    @navion Автор вопроса
    Если убрать, то работает лишь главная страница админки (admin/index.php), а при клике на лубую ссылку выдаёт 404.
  • Подружить Symfony и nginx?

    @navion Автор вопроса
    Теперь вместо 404 направляет на главную страницу через 302 редирект.
  • Подружить Symfony и nginx?

    @navion Автор вопроса
    Кнопка редактирования элемента из списка вызывает такой запрос:
    GET /admin/solutions/edit/id/1
  • Подружить Symfony и nginx?

    @navion Автор вопроса
    Так и сделал, сейчас оставив лишь это:

    nginx
        location ~ \.php$ {
            try_files $uri index.php;
    
            include /etc/nginx/fastcgi_params;
            fastcgi_pass 127.0.0.1:9000;
        }

    Но с админкой та же проблема, вместо передачи $uri в качестве парметра для admin/index.php, происходит поиск обычного файла в папке admin:

    GET /admin/headers HTTP/1.1" 404 571 "http://mysite.cloudapp.net/admin/"

    В оригинале там было следующее правило:

    .htaccess
    <IfModule mod_rewrite.c>
      RewriteEngine On
    
      # we skip all files with .something
      RewriteCond %{REQUEST_URI} \..+$
      RewriteCond %{REQUEST_URI} !\.html$
      RewriteRule .* - [L]
    
      # we check if the .html version is here (caching)
      RewriteRule ^$ index.html [QSA]
      RewriteRule ^([^.]+)$ $1.html [QSA]
      RewriteCond %{REQUEST_FILENAME} !-f
    
      # no, so we redirect to our front web controller
      RewriteRule ^(.*)$ index.php [QSA,L]
    </IfModule>
  • Подружить Symfony и nginx?

    @navion Автор вопроса
    Почему же на Хабре дают всего 2 минуты на редактирование? Хотя сам виноват, надо вначале получше проверить — в админке есть дополнительный уровень uri вида mysite/admin/url.
    Я плохо понимаю логику передачи парметров скрипту, возможно нужно как-то изменить $path_info?
  • Подружить Symfony и nginx?

    @navion Автор вопроса
    Подправил конфиг, вот рабочая версия:
    server {
        set $website_host "mysite.cloudapp.net";
        set $website_root "/var/www/mysite/web";
        set $default_controller "index.php";
        set $symfony_root "/var/www/mysite/lib/symfony";
    
        listen 80;
        server_name $website_host;
    
        merge_slashes on;
    
        # Gzip
        gzip on;
        gzip_min_length 1000;
        gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;
        gzip_disable "MSIE [1-6]\.";
    
        access_log /var/log/nginx/access.log;
    
        root $website_root;
    
        index $default_controller;
    
        charset utf-8;
    
        location / {
            try_files $uri $uri/ /$default_controller;
        }
    
        location /sf {
            alias $symfony_root/data/web/sf;
            expires max;
        }
    
        location /admin {
            allow 192.168.0.0/24;
            deny all;
        }
    
        location ~ \.php$ {
            try_files $uri index.php;
            set $script $uri;
            set $path_info $2;
    
            include /etc/nginx/fastcgi_params;
            fastcgi_pass 127.0.0.1:9000;
    
            fastcgi_param SCRIPT_FILENAME $website_root$script;
            fastcgi_param SCRIPT_NAME $script;
            fastcgi_param PATH_INFO $path_info;
        }
    
        location ~* ^.+\.(jpg|jpeg|gif|png|ico|mp3|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|dat|avi|ppt|txt|tar|mid|midi|wav|bmp|rtf|wmv|mpeg|mpg|tbz|js)$ {
            expires max;
            valid_referers none blocked server_names
                ~\.google\. images\.yandex\. ~\.yandex\. $website_host;
                if ($invalid_referer) {return 444;}
    
            log_not_found off;
            error_page 404 = /404/;
        }
    }

    Вроде не наделал откровенных косяков? В любом случае, большое спасибо за помощь!
  • Подружить Symfony и nginx?

    @navion Автор вопроса
    Добавил урл сайта в valid_referers и статику начало отдавать, но ни одна ссылка не работает — все возвращают главную страницу.
  • Подружить Symfony и nginx?

    @navion Автор вопроса
    Да, возвращает 444 для статики.
  • Подружить Symfony и nginx?

    @navion Автор вопроса
    К админке стало выдавать 403 страницу, но статику так и не отдаёт. Конфиг получился такой (пришлось поправить fastcgi и путь к /sf):

    server {
        set $website_host "mysite.cloudapp.net";
        set $website_root "/var/www/mysite/web";
        set $default_controller "index.php";
        set $symfony_root "/var/www/mysite/lib/symfony";
    
        listen 80;
        server_name $website_host;
    
        merge_slashes on;
    
        # Gzip
        gzip on;
        gzip_min_length 1000;
        gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;
        gzip_disable "MSIE [1-6]\.";
    
        access_log /var/log/nginx/$website_host.access.log;
    
        root $website_root;
    
        index $default_controller;
    
        charset utf-8;
    
        location / {
            try_files $uri $uri/ /$default_controller;
        }
    
        location /sf {
            # path to folder where all symfony assets are located
            alias /var/www/mysite/web/sf/;
            expires max;
        }
    
        location /admin {
            allow 192.168.0.0/24;
            deny all;
        }
    
        location ~ \.php$ {
            try_files $uri index.php;
            set $script $uri;
            set $path_info "/";
            include /etc/nginx/fastcgi_params;
            fastcgi_pass 127.0.0.1:9000;
            fastcgi_param SCRIPT_FILENAME $website_root$script;
            fastcgi_param SCRIPT_NAME $script;
            fastcgi_param PATH_INFO $path_info;
        }
    
        ### static files
    
        location ~* ^.+\.(jpg|jpeg|gif|png|ico|mp3|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|dat|avi|ppt|txt|tar|mid|midi|wav|bmp|rtf|wmv|mpeg|mpg|tbz|js)$ {
            expires max;
            valid_referers none blocked server_names
                ~\.google\. images\.yandex\. ~\.yandex\. ;
                if ($invalid_referer) {return 444;}
    
            log_not_found off;
            error_page 404 = /404/;
    
        }
    }
  • Подружить Symfony и nginx?

    @navion Автор вопроса
    С файловым локейшеном статику перестаёт отдавать вообще.

    Ещё попробовал конфигурацию отсюда, в этом случае выдаёт «Access denied» вместо главной страницы. Возможно это связано со старой версией фреймворка (symfony version 1.0.5-PRE), но обновить её нет возможности.
  • USB-токен для двухфакторной аутентификации?

    @navion Автор вопроса
    Подробнее про проблему с установкой драйверов на Aladdin eToken:
    www.aladdin-rd.ru/support/forum/?PAGE_NAME=read&FID=4&TID=1192
  • Подружить Symfony и nginx?

    @navion Автор вопроса
    Она перенаправляет запросы к admin/index.php, иначе они идут к index.php, который про админку ничего не знает и возвращает главную страницу.
  • Планирование ресурсов в частном «облаке»?

    @navion Автор вопроса
    1. Статичный
    2. Желательно в запланированном
    3. Да, хотя возможны исключения
  • Планирование ресурсов в частном «облаке»?

    @navion Автор вопроса
    Нужен именно календарь, который позволит распределить по времени работу 500 виртуальных машин при наличии ресурсов только для 50 (без использования оверкоммита). После этого, расписание можно забивать в планировщик, включать/выключать машины через API или вручную.
  • Почему 4хдисковые NAS'ы стоят так дорого?

    @navion
    Привем работает бесшумно и имеет встроенный БП, а ещё туда можно поставить ОС с дедупликацией.
  • Windows Server 2012 или FreeBSD 9.0? Без холиваров!

    @navion
    С тем, что DNS/DHCP только на Windows.
  • Windows Server 2012 или FreeBSD 9.0? Без холиваров!

    @navion
    В больших компаниях с вами не согласятся и продолжат использовать такие коробки:
    www.bluecatnetworks.com/products/adonis
  • Загадка тормозного FibreChannel NAS?

    @navion
    Там в базе идёт гарантия с 4 часовой реакцией, ну и диски на складах есть всегда.