본문 바로가기
IT 전자기기

삼성 폴드1에 운영중인 웹서버 Z5 로 apache2 에서 nginx 로 이전

by 다사도 2026. 1. 22.
반응형

서버 환경이 달라서 걱정 되었지만 테스트 한번 해보니 되는 것 같아 재시도 한다.

백업을 복구했더니 사이트 주소를 완전히 못 받아와서 약간 문제는 있었지만 테스트 결과 모두 정상일것 같아.

완전히 처음 부터 새로 시작한다.

먼저 백업 파일을 폰으로 옮긴다.

원드라이브 사용하면 usb 연결없이 네트워크로 파일 업로드 다운로드 공유 가능함.

 

터먹스를 처음 실행하면 시스템을 최신 상태로 만들고 필요한 서버 프로그램들을 설치합니다.

 
 
 
 

1단계: 필수 패키지 설치

먼저 웹 서버 운영에 필요한 핵심 프로그램들을 설치합니다.

Bash
 
pkg update && pkg upgrade -y
pkg install nginx mariadb php-fpm -y

2단계: 루트 권한으로 파일 복사 및 압축 해제

루트 권한(su)으로 들어가서 파일을 Termux의 안전한 영역으로 먼저 옮긴 뒤 압축을 풀겠습니다.

Bash
 
# 1. 루트 권한 획득 (폰에서 '허용' 클릭)
su

# 2. 백업 파일을 Termux 홈 디렉토리로 강제 복사
cp /sdcard/Download/wp_files.tar.gz /data/data/com.termux/files/home/
cp /sdcard/Download/wordpress_backup.sql /data/data/com.termux/files/home/

# 3. 복사한 파일의 소유권을 다시 Termux 사용자로 변경 (중요!)
chown $(stat -c '%u:%g' /data/data/com.termux/files/home) /data/data/com.termux/files/home/wp_files.tar.gz
chown $(stat -c '%u:%g' /data/data/com.termux/files/home) /data/data/com.termux/files/home/wordpress_backup.sql

# 4. 루트 권한 종료
exit

 

3단계: 다시 압축 풀기 및 DB 복원

이제 파일이 Termux 내부로 들어왔으니 일반 권한으로도 잘 실행될 거예요.

Bash
 
해결 방법: 빈 데이터베이스 생성 후 다시 복원
먼저 MariaDB에 접속합니다.

mysqld_safe &

db 실행

Bash
mariadb -u root
비어있는 wordpress 데이터베이스를 만듭니다. (세미콜론 ; 잊지 마세요!)

SQL
CREATE DATABASE wordpress;
EXIT;
이제 다시 복원 명령어를 입력합니다.

Bash
mariadb -u root wordpress < ~/wordpress_backup.sql


압축 파일 해제 (압축 파일이 홈 디렉토리에 있다고 가정)
tar -xvzf ~/wp_files.tar.gz -C $PREFIX/share/nginx/html/

(파일들이 올바른 위치에 있는지 확인)
ls $PREFIX/share/nginx/html/

 

4단계: 환경 설정 수정

첫번째 수정 파일 명령어

nano $PREFIX/etc/nginx/nginx.conf

    server {
        listen       포트 번호;
        server_name  사이트주소;

        #access_log  logs/host.access.log  main;

        location / {
            root   /data/data/com.termux/files/usr/share/nginx/html;
            index  index.php index.html index.htm;

            # 짧은 주소 변경 해줌. 요청한 주소에 파일이 없으면 index.php로 넘겨주라는 뜻입니다.
            try_files $uri $uri/ /index.php?$args;
        }

위 빨간 글 아주 중요

그리고 아랫 부분에 모두 # 주석 처리 되어있는데 지우고 아래 처럼 수정해줘야 php 작동함

        location ~ \.php$ {
            root           /data/data/com.termux/files/usr/share/nginx/html;
            fastcgi_pass   unix:/data/data/com.termux/files/usr/var/run/php-fpm.sock;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

 

두번째 수정 파일 명령어

nano $PREFIX/share/nginx/html/wp-config.php

<?php
바로 아래
define( 'WP_HOME', 'http://사이트 주소.com' );
define( 'WP_SITEURL', 'http://사이트 주소.com' );

위 두줄 추가

그리고 DB_HOST를 127.0.0.1 로 수정 원래 localhost 였는데 안되어서 변경함. localhost 에서도 된다면 그냥 사용해도 됨.

define( 'DB_HOST', '127.0.0.1' );

 

이렇게 수정해주면 

proot 우분투에서 apache 서버로 돌아가던 것을 termux 에서 바로 구동 가능

 

 

# 1. PHP-FPM 실행
php-fpm

# 2. Nginx 실행
nginx

# 3. (이미 켜져 있다면) Nginx 재시작
nginx -s reload

 

실행하면 됨

반응형

댓글