그누보드5와 React 같이 사용하기 1/2 > 그누보드5 개발일지

그누보드5 개발일지

그누보드5와 React 같이 사용하기 1/2 정보

그누보드5와 React 같이 사용하기 1/2

본문

https://www.youtube.com/watch?v=jqqM607r10M

 

ubuntu 24.04 LTS 버전의 서버에서

그누보드5를 설치하고 npm 을 설치하여 react 를 같이 사용하는 방법에 대해 알아 봅니다.

 

sudo apt update
sudo apt install -y apache2 php php-gd php-mysql mysql-server
sudo a2enmod rewrite

 

mysql    접속후

    CREATE DATABASE mydb;
    CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';
    GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'localhost';
    FLUSH PRIVILEGES;
    exit;

 

cd /var/www/html
git clone https://github.com/gnuboard/gnuboard5.git
cd gnuboard5
mkdir data
chmod 707 data

 

    웹에서 그누보드5 실행

    MySQL 정보입력
    User : myuser
    Password : mypassword
    DB : mydb

 

sudo apt install -y npm
npx create-react-app react-app
cd react-app


vi package.json
    
    "homepage": "/gnuboard5/react-app",

 

npm run build


vi .htaccess 

 

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /gnuboard5/react-app/
  RewriteRule ^index\.html$ - [L]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /gnuboard5/react-app/index.html [L]
</IfModule>


vi /etc/apache2/sites-enabled/000-default.conf

 

    Alias /gnuboard5/react-app /var/www/html/gnuboard5/react-app/build
    <Directory /var/www/html/gnuboard5/react-app>
        Options FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

systemctl restart apache2
 

 

추가(240827) : .htaccess 는 없어도 되는 것으로 확인했습니다.

추천
8

댓글 7개

nginx 의 경우 아래 설정을 적용해 보세요.

 

apt install nginx php-fpm

 

 

        # Add index.php to the list if you are using PHP
        index index.html index.htm index.nginx-debian.html index.php;

 

        server_name _;

 

        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
                try_files $uri $uri/ =404;
        }

 

        # pass PHP scripts to FastCGI server
        #
        location ~ \.php$ {
                include snippets/fastcgi-php.conf;
        #
        #       # With php-fpm (or other unix sockets):
                fastcgi_pass unix:/run/php/php8.3-fpm.sock;
        #       # With php-cgi (or other tcp sockets):
        #       fastcgi_pass 127.0.0.1:9000;
        }
 

 

 

    # React 앱을 위한 위치 설정
    location /react-app {
        alias /var/www/html/gnuboard5/react-app/build;
    }

 

@미니님a 작업중에 말씀해 주시는게 좋습니다.

개발이 완료되면 변경이 어렵습니다.

 

https://github.com/gnuboard/gnuboard5/tree/feat/restapi

 

@리자 

 

https://github.com/gnuboard/gnuboard5/issues/336

 

그누6에 있던 기능 개발 건의입니다

 

API 만 사용 + 예외적으로 관리자 페이지만 접근 가능...

전체 27 |RSS
그누보드5 개발일지 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT