Update Nginx + FastCGI для Webasyst

1

Здравствуйте.

Формы входа через соц. сети не работают т.к. в дефолтном конфиге под nginx на стр. nginx+fastcgi забыли указать location к скрипту oAuth.php

А именно не работали в дизайне proStore. Проверил, добавил, работает.

Добавьте следующие примеры к документации:

location ~* ^/oauth.php {
    error_page 404 = @oauth;
}

location @oauth {
    include fastcgi_params;
    fastcgi_pass 127.0.0.1:9000; или unix:/var/run/php/phpВАШАверсия-fpm.sock;
    fastcgi_param SCRIPT_NAME /oauth.php;
    fastcgi_param SCRIPT_FILENAME $document_root/index.php;
}


Уважамеые разработчки. Если есть другая документация по nginx+fastCGI для webasyst (для конкретного плагина, кассы и т.д.), просьба поделиться. 

Серверы debian, centOs.

6 комментариев

  • +1
    Михаил Ушенин Михаил Ушенин Webasyst 6 февраля 2019 18:25 #

    Добавили запись для адреса oauth.php в документацию. Спасибо за замечание!

    • +1
      skullkid unix skullkid unix 7 февраля 2019 11:26 #

      Убрал из конфига свои настройки и  добавил из документации

      location /oauth.php { 
              try_files $uri $uri/ /index.php?$query_string;    
      }

      получил ошибку при попытке регистрации через соц. сети

      Вы проверили на php в режиме FastCGI ?

      Только при такой настройке все заработало

      location ~* ^/oauth.php {
      error_page 404 = @oauth;
      }
      location @oauth {
      include fastcgi_params;
      fastcgi_pass 127.0.0.1:9000;
      fastcgi_param SCRIPT_NAME /oauth.php;
      fastcgi_param SCRIPT_FILENAME $document_root/index.php;
      }

        

      Мой конфиг ничем не отличается от конфига из документации

      кроме строчки

      location ~* ^/install.php {
      return 404;
      }

      Закрыл просто инсталлер :)

      • +2
        Михаил Ушенин Михаил Ушенин Webasyst 7 февраля 2019 12:09 #

        Вы правы — пропустили символ ~. Заодно добавили ещё несколько имён «файлов», кроме oauth.php.

        • +1
          skullkid unix skullkid unix 7 февраля 2019 15:16 #

          Работает! ;)

          Можно задать вопрос насчет конфига для кеширования? Можете не отвечать, к дефолтному конфигу не относится, а сугубо к конфигу под себя.

          При настройке кеширования в nginx админка либо не открывается либо открывается без ввода пароля. Надо добавить в исключение папку /wa-apps как я понял (или нет). 

          Какой путь правильнее добавить в исключение начиная с site.ru/webasyst что бы ничего кешировалось nginx-ом что касается админки? 

          Пример примерного cfg

          set $no_cache 0;
          if ($request_method = POST) {
          set $no_cache 1;
          }
          if ($query_string != "") {
          set $no_cache 1;
          }
          if ($request_uri ~* "/webasyst/|wa-.*.|index.php") {
          set $no_cache 1;
          }

          location ~ \.php$  {

          include fastcgi_params;
          fastcgi_cache FASTCGICACHE;
          fastcgi_pass 127.0.0.1:9000;
          fastcgi_index index.php;
          fastcgi_split_path_info ^(.+?\.php)(/.*)$;
          fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
          fastcgi_param PATH_INFO $fastcgi_script_name;
          fastcgi_buffer_size 128k;
          fastcgi_buffers 256 4k;
          fastcgi_busy_buffers_size 256k;
          fastcgi_temp_file_write_size 256k;
          fastcgi_intercept_errors on;
          fastcgi_cache_bypass $no_cache;
          fastcgi_no_cache $no_cache;
          fastcgi_cache_valid 200 60m;
          fastcgi_cache_valid 404 60m;
          fastcgi_max_temp_file_size 4m;
          fastcgi_cache_use_stale updating;
          fastcgi_cache_methods GET HEAD;
          add_header X-Fastcgi-Cache $upstream_cache_status;
          if (!-f $document_root$fastcgi_script_name) {
          return 404;
          }
          }

        • +1
          Сергей Малышкин (SEO) Сергей Малышкин (SEO) 29 марта 2019 15:40 #

          Михаил, не работает по такой инструкции...

          try_files $uri $uri/ /index.php?$query_string;
          location ~ /(oauth.php|link.php|payments.php) {
          try_files $uri $uri/ /index.php?$query_string;
          }
          location / {
          try_files $uri $uri/ /index.php?$query_string;
          location ~ [^/]\.ph(p\d*|tml)$ {
          try_files /does_not_exists @php;
          }
          location ~* ^.+\.(svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
          expires 7d;
          }
          }
          #location ~ /wa-content {
          # allow all;
          #}

          далее по инструкции все.

          https://pitersmoke.pro/signup/ ошибка 404.

        • +1
          skullkid unix skullkid unix 7 февраля 2019 16:07 #

          Или как добавить запросы 

          'backend_url' => 'это_админка', из /wa-config/config.php

          включая все пути к файлам и плагинам в админке в исключение?

          Добавить комментарий

          Чтобы добавить комментарий, зарегистрируйтесь или войдите