Установка камердинера Laravel (Nginx) с CMS (Perch Runway) - PullRequest
0 голосов
/ 22 ноября 2018

Я пытаюсь настроить Perch Runway на Valet.Глядя на документацию, Perch Runway CAN работает на установке Nginx, которую использует Valet.Раньше было так, что для этого требовался специальный драйвер Valet, но вы этого больше не делаете.Я установил новый экземпляр Valet и могу без проблем добраться до администратора Perch, но ... при просмотре веб-сайта я получаю 404.

Я подозреваю, что мне нужно установить некоторые правила перезаписи вФайл конфигурации Valet Nginx (аналогичный необходимому конфигу в файле .htaccess) согласно документации perch .Я пытался использовать информацию о конфигурации Perch nginx для исправления файла конфигурации камердинера для сайта, но решение ускользает от меня, и я все еще вижу ошибки variouse 404, 403 в зависимости от того, что я пытаюсь после перезапуска Valet.Я надеюсь, что кто-то с немного большим опытом может увидеть решение.

Заранее спасибо ...

Что нужно отметить:

  • "окунь"папка в корне была переименована в «login».

Документация ниже

  • Конфигурация Old Perch Runway .htaccess для справки
  • Рекомендуемый Nginx PerchКонфиг в соответствии с официальной документацией
  • Файл конфигурации My Valet Nginx (без изменений)
  • Файл конфигурации My Valet Nginx (с попытками исправления, которые не работают)

Конфигурация Old Perch Runway .htaccess для справки

 RewriteCond %{REQUEST_URI} !^/login
 RewriteCond %{REQUEST_FILENAME} !-f

Рекомендованная конфигурация Nginx Perch

# Match just the homepage
location = / {
    try_files $uri @runway;
}

# Match any other request
location / {
    try_files $uri $uri/ @runway;
}

# Perch Runway
location @runway {
    rewrite ^ /perch/core/runway/start.php last;
}

My Config Файл конфигурации Nginx (без изменений)

  server {
      listen 80;
      server_name armstrong.test www.armstrong.test *.armstrong.test;
      return 301 https://$host$request_uri;
  }

  server {
      listen 443 ssl http2;
      server_name armstrong.test www.armstrong.test *.armstrong.test;
      root /;
      charset utf-8;
      client_max_body_size 128M;

      location /41c270e4-5535-4daa-b23e-c269744c2f45/ {
          internal;
          alias /;
          try_files $uri $uri/;
      }

      ssl_certificate /Users/danlee/.valet/Certificates/armstrong.test.crt;
      ssl_certificate_key /Users/danlee/.valet/Certificates/armstrong.test.key;

      location / {
          rewrite ^ /Users/danlee/.composer/vendor/laravel/valet/server.php last;
      }

      access_log off;
      error_log /Users/danlee/.valet/Log/nginx-error.log;

      error_page 404 /Users/danlee/.composer/vendor/laravel/valet/server.php;

      location ~ \.php$ {
          fastcgi_split_path_info ^(.+\.php)(/.+)$;
          fastcgi_pass unix:/Users/danlee/.valet/valet.sock;
          fastcgi_index /Users/danlee/.composer/vendor/laravel/valet/server.php;
          include fastcgi_params;
          fastcgi_param SCRIPT_FILENAME /Users/danlee/.composer/vendor/laravel/valet/server.php;
      }

      location ~ /\.ht {
          deny all;
      }
        }

MyФайл конфигурации Valet Nginx (с попытками компенсации, которые не работают)

    server {
        listen 80;
        server_name armstrong.test www.armstrong.test *.armstrong.test;
        return 301 https://$host$request_uri;
    }

    server {
        listen 443 ssl http2;
        server_name armstrong.test www.armstrong.test *.armstrong.test;
        root /;
        charset utf-8;
        client_max_body_size 128M;

        location /41c270e4-5535-4daa-b23e-c269744c2f45/ {
            internal;
            alias /;
            try_files $uri @runway;
        }

        ssl_certificate /Users/danlee/.valet/Certificates/armstrong.test.crt;
        ssl_certificate_key /Users/danlee/.valet/Certificates/armstrong.test.key;

        # Match any other request
           location / {
               try_files $uri $uri/ @runway;
           }

           # Perch Runway
           location @runway {
               rewrite ^ /perch/core/runway/start.php last;
           }

        location / {
            rewrite ^ /Users/danlee/.composer/vendor/laravel/valet/server.php last;
        }

        access_log off;
        error_log /Users/danlee/.valet/Log/nginx-error.log;

        error_page 404 /Users/danlee/.composer/vendor/laravel/valet/server.php;

        location ~ \.php$ {
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_pass unix:/Users/danlee/.valet/valet.sock;
            fastcgi_index /Users/danlee/.composer/vendor/laravel/valet/server.php;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME /Users/danlee/.composer/vendor/laravel/valet/server.php;
        }

        location ~ /\.ht {
            deny all;
        }
    }
...