de ce nu este serverul de servire php artizanal al lui Laravel accesibil de pe WWW pe IIS (Administrarea sistemului, Apache 2.2, Php, Windows Server 2008 R2, Http, Httpd)

abbood a intrebat.

Am o aplicație laravel care rulează prin laravel artisan server:

 php artisan serve

și funcționează foarte bine dacă mă duc pe site-ul meu localhost:8000.. Mai mult, am adăugat o regulă de intrare în serverul IIS astfel:

Panou de control -> Instrumente administrative -> Firewall Windows cu securitate avansată, Reguli de intrare. Creați o nouă regulă „Allow Port, TCP, 8000, All profiles

Cu toate acestea, dintr-un motiv oarecare, tot nu pot accesa site-ul web de pe WWW (am făcut exact aceiași pași pentru un server webrick (pe aceeași mașină) și lucrurile au funcționat perfect)… vreo idee?

Comentarii

  • Fără a cunoaște Laravel sau artisan, , bănuiala mea este că este legat de localhost doar în mod implicit și trebuie să îl configurezi pentru a gestiona cererile non-locale. Căutați în documentele sistemului pentru a verifica acest lucru. –  > Por Sven.
  • @SvW are dreptate. –  > Por ceejayoz.
1 răspunsuri
ceejayoz

Pentru a o face să funcționeze în afara localhost, faceți php artisan serve --host 0.0.0.0

Dacă vrei să funcționeze fără a specifica portul în browser, php artisan serve --host 0.0.0.0 --port 80. sudo va fi probabil necesar.

Notă: php artisan serve ar trebui să niciodată fi utilizat pentru producție. Este doar pentru dezvoltare și demonstrație și nu va putea face față unui trafic mai mare de o persoană sau două.

Comentarii

  • Ok, sună bine… într-adevăr, folosind instrucțiunile dvs. am reușit să o vizualizez de pe WWW (adică mydomain.com:8080)… totuși, mă întreb de ce nu pot face ca Apache să o servească efectiv pe WWW? acesta este scenariul meu specific: rulează artisan serve face să funcționeze foarte bine… dar apoi pornirea lui Apache îmi dă page not found erori… am creat un exemplu de proiect laravel folosind composer… și a funcționat foarte bine chiar și pe apache… însă acest proiect l-am copiat de fapt de pe mașina altui dezvoltator… presupun că ar putea avea ceva de-a face cu permisiunile fișierelor? –  > Por abbood.
  • Va trebui să configurați corect Apache pentru a indica directorul corect. Consultați laravel.com/docs/installation#pretty-urls. –  > Por ceejayoz.
  • ok… am schimbat AllowOverride în All în httpd.conf în definiția fișierului DocumentRoot așa cum este instruit aici… dar nu a funcționat… în site-ul Laravel spune că dacă nu funcționează încercați Options +FollowSymLinks RewriteEngine On .... dar nu sunt sigur unde să pun aceste lucruri? ar trebui să meargă și ele în același fișier httpd.conf? –  > Por abbood.
  • DocumentRoot este îndreptat către directorul public? –  > Por ceejayoz.
  • @colinhoernig Amintiți-vă doar să niciodată folosiți-o pentru producție. –  > Por ceejayoz.