Apache Server, CentOS 7(Oracle Linux 7)에 Yarn을 사용하여 React 앱 배포

이 기사는 CentOS 7(Oracle Linux 7)의 Apache Server에서 yarn 명령을 사용하여 빌드된 React JS 프로젝트 배포에 중점을 둡니다.

전제 조건
  • 이 튜토리얼에서는 원격 저장소에서 Yarn을 사용하여 빌드된 작동하는 React JS 프로젝트가 있다고 가정합니다.
  • CentOS 7에 Apache Web Server가 설치되어 있습니다. (설치하지 않은 경우 this 문서를 따를 수 있습니다. )
  • CentOS 7에 Git이 설치되어 있습니다. (설치하지 않은 경우 this 기사를 따를 수 있습니다. )
  • CentOS 7에 Yarn이 설치되어 있습니다. (설치하지 않은 경우 this 문서를 따를 수 있습니다. )

  • 최근에 Windows PC에서 Yarn 패키지 관리자를 사용하여 React App을 만들고 CentOS 7의 Apache Web Server에 배포했습니다. 배포하는 동안 전체 프로세스를 거친 리소스를 충분히 찾을 수 없었기 때문에 이 기사를 작성합니다. 도움이 필요한 사람을 돕기 위해.

    먼저 CentOS 7에서 프로젝트를 보관할 디렉토리로 이동하고 터미널을 사용하여 원격 저장소에서 다운로드합니다. 여기서 프로젝트 이름은 "YourReactApp"입니다.

    git clone url_of_remote_repository/YourReactApp.git
    


    프로젝트 디렉토리로 이동하여 yarn 명령을 실행하십시오.

    cd YourReactApp
    yarn
    


    명령을 실행하면 다음이 표시됩니다.

    yarn install v1.22.5
    [1/4] Resolving packages...
    [2/4] Fetching packages...
    . 
    .
    [4/4] Building fresh packages...
    Done in 535.39s.
    


    yarn build 명령 실행

    yarn build
    


    빌드가 완료되면 프로젝트 디렉토리에 "build"라는 폴더가 생성되는 것을 볼 수 있습니다. 빌드 폴더 안에 ".htaccess"파일을 생성해야 합니다.

    cd build
    nano .htaccess
    


    ".htaccess"파일에 다음 코드 조각을 추가하고 저장합니다.

    Options -MultiViews
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.html [QSA,L]
    


    이제 "build"폴더를 복사하여 "/var/www/html"안에 붙여넣습니다.

    sudo cp -rf build /var/www/html/build
    


    파일을 복사한 후 "httpd.conf"파일을 수정해야 합니다. "/etc/httpd/conf/"디렉토리에서 찾을 수 있습니다.

    nano /etc/httpd/conf/httpd.conf
    


    "httpd.conf"파일에서 "ServerName"줄을 찾아 DNS 이름 또는 IP 주소를 추가합니다. ""에 컨텐츠 디렉토리를 추가합니다. 이 경우에는 "/var/www/html/build"입니다. 또한 "AllowOverride None"을 "AllowOverride All"로 변경하고 파일을 저장합니다.

    <Directory "/var/www/html/build">
        ...
        AllowOverride All
        ...
    </Directory> 
    


    엄청난! 구성이 완료되었습니다. 이제 다음 명령으로 서버를 실행하십시오.

    sudo systemctl start httpd
    


    다음 명령으로 서버의 상태를 볼 수 있습니다.

    sudo systemctl status httpd
    


    서버가 실행 중일 때 활성 상태가 표시됩니다.

    Output
    Redirecting to /bin/systemctl status httpd.service
    ● httpd.service - The Apache HTTP Server
       Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
       Active: active (running) since Wed 2019-02-20 01:29:08 UTC; 5s ago
         Docs: man:httpd(8)
               man:apachectl(8)
     Main PID: 1290 (httpd)
       Status: "Processing requests..."
       CGroup: /system.slice/httpd.service
               ├─1290 /usr/sbin/httpd -DFOREGROUND
               ├─1291 /usr/sbin/httpd -DFOREGROUND
               ├─1292 /usr/sbin/httpd -DFOREGROUND
               ├─1293 /usr/sbin/httpd -DFOREGROUND
               ├─1294 /usr/sbin/httpd -DFOREGROUND
               └─1295 /usr/sbin/httpd -DFOREGROUND
    ...
    


    즐기다 !!!

    📫 연락주세요


  • LinkedIn -
  • 트위터 -

  • 또는 mail에 ♥를 주세요.

    좋은 웹페이지 즐겨찾기