[컴][웹] windows에서 nginx + laravel 사용

windows php / nginx laravel /

windows에서 nginx + laravel 사용

php 설치 및 설정

apache 에서 한 설정과 다르지 않다. 다음 링크를 참고하자.

다만 apache 에서는 php 를 사용하기 위해 서버에서 php7_module 을 load 했다. 하지만 nginx 는 fast cgi 를 이용한다.

nginx 설치

  1. download : 여기서는 1.18.0 version 을 사용했다.
  2. /conf/nginx.conf 수정

download 및 실행방법

  • nginx: download
  • nginx 실행 : d:\nginx\nginx-1.18.0\nginx.exe
  • 확인 : 웹브라우저를 열고 http://localhost/ 에 접속하면 화면이 보인다.
  • nginx.exe -s stop 명령으로 서비스를 중지할 수 있다.

설정

http{
    ...
    server {
        listen       8000;
        listen       localhost:8000;
        server_name  localhost  namhalias.com  namh.another.alias.com;
        root   d:/mylaravel/public;

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

        # fast cgi 설정, 이 녀석이 필요하다.
        location ~ \.php$ {
            try_files $uri /index.php = 404;
            fastcgi_pass  127.0.0.1:7000;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi_params;
        }
    }
}
  • http: 여기서 ‘server’ 와 ‘client’ 사이에서 어떤 protocol 을 사용할 것인지를 설정한다.
  • server: virtual-host 를 설정하는 곳, apahce 의 vhost 설정같은 곳이다.
  • location: 개별 경로에 대한 설정

실행

  1. fast-cgi 실행
  2. nginx.exe 실행
  3. 확인: web browser 에서 http://localhost:8000 접속
D:\php\>php-cgi -b localhost:7000
D:\php\>cd d:\nginx
D:\nginx\nginx-1.18.0>nginx.exe

nginx 를 service 로 만들기

powershell 을 열고 아래 내용을 붙여넣기 하자.

$params = @{
    Name = "nginx"
    BinaryPathName = "d:\nginx\nginx-1.18.0\nginx.exe"
    DisplayName = "nginx"
    StartupType = "Automatic"
    Description = "nginx web-server service"
}
New-Service @params

그러면 아래처럼 service 가 생성된다.

PS D:\nginx\nginx-1.18.0> $params = @{
>>     Name = "nginx"
>>     BinaryPathName = "d:\nginx\nginx-1.18.0\nginx.exe"
>>     DisplayName = "nginx"
>>     StartupType = "Automatic"
>>     Description = "nginx web-server service"
>> }
PS D:\nginx\nginx-1.18.0> New-Service @params

Status   Name               DisplayName
------   ----               -----------
Stopped  nginx              nginx


PS D:\nginx\nginx-1.18.0>

See Also

  1. 쿠…sal: [컴][웹][php] windows 10에서 Laravel 설치
  2. 쿠…sal: [컴][웹][php] lumen 설치 하기

Reference

  1. Setup Nginx Web Servers with PHP Support on Ubuntu Servers | Website for Students
  2. Laravel with NGINX in Windows — Installation to Set up | by Billy Koswara | Medium

댓글 없음:

댓글 쓰기