Try using it in your preferred language.

English

  • English
  • 汉语
  • Español
  • Bahasa Indonesia
  • Português
  • Русский
  • 日本語
  • 한국어
  • Deutsch
  • Français
  • Italiano
  • Türkçe
  • Tiếng Việt
  • ไทย
  • Polski
  • Nederlands
  • हिन्दी
  • Magyar
translation

AI가 번역한 다른 언어 보기

투잡뛰는 개발 노동자

[php]우분투에 Codeigniter 4 셋팅하기

  • 작성 언어: 한국어
  • 기준국가: 모든 국가 country-flag

언어 선택

  • 한국어
  • English
  • 汉语
  • Español
  • Bahasa Indonesia
  • Português
  • Русский
  • 日本語
  • Deutsch
  • Français
  • Italiano
  • Türkçe
  • Tiếng Việt
  • ไทย
  • Polski
  • Nederlands
  • हिन्दी
  • Magyar

durumis AI가 요약한 글

  • 회사에서 새로운 프로젝트를 진행하며 Codeigniter 4를 사용하게 되었고, 개발 서버 셋팅 과정에서 겪은 어려움을 기록했습니다.
  • Apache2, PHP 7버전을 설치한 후 Codeigniter 4 프레임워크 파일을 다운로드하고, 프로젝트 파일을 Apache2에 업로드했습니다.
  • 프로젝트 파일 내 /writable 폴더 권한을 변경하고, 필수 PHP 익스텐션(curl, intl, mbstring, xml)을 설치한 후 php.ini 파일에서 관련 익스텐션 주석을 해제하고 Apache를 재시작하여 Codeigniter 4 초기화면을 확인했습니다.

Codeigniter 4.
회사에서 새로운 프로젝트를 진행할 기회가 생겼습니다. 입사 후 기존 웹 페이지는 Codeigniter 3 를 사용하고 있었기 때문에, 호기심 반 기대 반으로 Codeigniter 4를 사용하기로 결정합니다.

가장 먼저 해야할 개발서버 셋팅. 이 문서는 개발서버에 Codeigniger 4를 올리면서 겪은 삽질(?)을 기록하기 위해 만들었습니다.

개발서버의 운영체제는 우분투 20.04.2 버젼에서 테스트 했습니다


Apache2, php 7버전은 미리 설치해두었기 때문에, Codeigniter 4(이하 CI4) 프레임워크 파일을 다운로드 받습니다.



위 URL로 접속해서 CI4 Download를 클릭해서 프레임워크 파일을 다운로드 합니다. 기본적으로 PHP 7.3 버젼 이상이 필요하다고 하네요.


알집을 해제하면 위 화면과 같은 파일들을 확인할 수 있습니다. 제가 테스트에 사용한 CI 버젼은 4.1.3 입니다.

이제 다운받은 프로젝트 파일을 Apache2 에 업로드 해줍니다.



저는 테스트를 위해 ci4로 프로젝트명을 변경해서 올렸습니다. 업로드 후 정상적으로 동작하는지 확인하기 위해 localhost(혹은 주소)/public/index.php 로 접속해봅니다.

접속을 하자마자 에러 화면부터 보이네요.

사실 여기서부터가 삽질의 시작이었습니다. 일단 저의 경우는, 폴더의 권한 및 PHP 익스텐션이 설치되지 않아 보이는 에러였습니다. 일단 먼저 프로젝트 파일 내 /writable 폴더의 권한을 변경해줍니다.


sudo chmod -R 777 writable


두 번째로, 필수 php 익스텐션을 설치해주어야 합니다. 필수 익스텐션으로는 curl, intl, mbstring, xml 4가지입니다. 기존에 운영하던 서버에서는 설치가 되있는 경우도 있을 수 있지만, 저는 처음 서버를 셋팅하기 때문에 하나하나 설치를 해줍니다.


sudo apt-get install php-curl
sudo apt-get install php-intl
sudo apt-get install php-mbstring
sudo apt-get install php-xml


위 명령어들을 하나씩 실행시켜 필요한 익스텐션을 설치합니다.

마지막으로 php.ini 파일에서 crul, intl 익스텐션의 주석을 풀어주어야합니다.


sudo nano /etc/php/7.4/apache2/php.ini


php.ini 파일은 서버의 환경에 따라 위치가 다를 수 있습니다. 위 명령어를 실행시켜 php.ini 파일 수정모드로 접근합니다.


;extension=bz2
extension=curl
;extension=ffi
;extension=ftp
;extension=fileinfo
;extension=gd2
;extension=gettext
;extension=gmp
extension=intl
;extension=imap
;extension=ldap
;extension=mbstring
;extension=exif ; Must be after mbstring as it depends on it
;extension=mysqli
;extension=oci8_12c ; Use with Oracle Database 12c Instant Client
;extension=odbc
;extension=openssl
;extension=pdo_firebird
;extension=pdo_mysql

php.ini 파일의 스크롤을 내리다보면 위와 같은 부분이 생기는데, curl과 intl 부분의 앞 ;을 지워주고 Cntl + x를 눌러 저장하고 빠져나옵니다.

모든 설정을 바꾸고 apache를 재시작 해줍니다.


sudo service apache2 restart



다시 위의 url로 접근해보면 정상적으로 출력되는 CI4 초기화면을 볼 수 있습니다.

막상 정리하고 보면 별거 아닌 내용이지만, 막상 개발서버를 처음 셋팅하며 구글링과 삽질(?)을 통해 많은 시간이 소요되었습니다.

운영중인 서버의 SM 위주로 하다보니 개발서버를 직접 셋팅할 기회가 없었는데, 막상 해보니 어렵지만 나름 배우는 재미가 있는 좋은 경험이었네요.







TheCareer
투잡뛰는 개발 노동자
코딩, 취업, 이직, 경제에 관심 많은 IT 노동자
TheCareer
[비전공, 개발자로 살아남기] 7. 신업 취업시 도움이 되는 것과 안되는 것 신입 개발자 취업 준비 시 기술 블로그는 시간 낭비일 수 있으며, GitHub를 활용하여 프로젝트를 관리하고 코드 설명을 작성하는 것은 도움이 됩니다. 다양한 자격증 중 정보처리기사만 있으면 충분하며, 학력에 따라 기능사, 산업기사, 기사를 선택적으로 취득하면 됩니다.

2024년 3월 29일

[SI 개발자 이야기] 08. SI 프로젝트 투입 초기 업무 파악 SI 프로젝트에 처음 투입된 개발자는 개발 환경 구축 후 프로젝트의 전체적인 시스템 구축 방향과 현재까지 진행된 내용을 파악해야 합니다. 특히 신입 개발자는 제안서와 RFP를 통해 프로젝트의 핵심 내용을 이해하고, 모르는 부분은 메모하여 한꺼번에 질문하는 것이 효과적입니다. 약 한 달간 프로젝트를 파악하는 시간을 투자하면 이후 본격적인 개발에 참여할 수 있습니다.

2024년 4월 18일

[python]파이썬 기초1 파이썬 모듈 알아보기 PHP로 개발된 프로그램을 Python으로 마이그레이션하는 과정에서 Python의 기본 개념과 모듈 사용법을 설명합니다. Python은 스크립트 언어로, 동적 타이핑을 지원하며 플랫폼 독립적인 특징을 가지고 있습니다. 다양한 라이브러리 지원으로 생산성이 높으며, 모듈을 통해 코드 재사용성을 높일 수 있습니다.

2024년 3월 27일

PHP 버전 업그레이드 도구 rector 소개 PHP 5.3 코드를 PHP 7.4로 마이그레이션하는 데 유용한 도구인 Rector의 사용법을 소개합니다. Rector는 코드를 분석하고 문법 오류를 수정하며, 컴포저를 통해 설치할 수 있습니다. Rector.php 설정 파일을 통해 소스 코드 폴더와 PHP 버전을 지정하고, 필요에 따라 특정 규칙이나 폴더를 제외할 수 있습니다. `rector process` 명령어는 변경 사항을 콘솔에 출력하며, `rector` 명령어는 소스 코드를 직접 수정합니다.
초록 기린
초록 기린
초록 기린
초록 기린

2024년 3월 24일

Rust로 기깔난 CLI 만들어보기 Rust 언어를 사용하여 clap과 ratatui 라이브러리를 활용하여 로그인, 로그아웃 기능을 갖춘 CLI 프로그램을 만드는 방법을 소개합니다. 플래그를 이용한 명령어 처리와 TUI를 이용한 대화형 인터페이스 구현 방법을 보여줍니다. GitHub 링크를 통해 전체 코드를 확인할 수 있습니다.
곽경직
곽경직
곽경직
곽경직
곽경직

2024년 3월 13일

Rust 입문 가이드 러스트 프로그래밍 입문 가이드: 러스트 설치부터 기본 문법, 프로젝트 관리, 테스트, 최적화, 서드파티 라이브러리 활용까지 다루는 야매 가이드입니다.
곽경직
곽경직
곽경직
곽경직
곽경직

2024년 3월 30일

한국투자증권 API 개발 시행착오에 대한 기록 한국투자증권 API를 활용해 자동 매매 프로그램을 개발하는 과정에서 겪었던 어려움과 해결 과정을 담은 블로그 글입니다. 계좌 개설, 모의투자 미지원, 웹소켓, 매매 방법론 등 다양한 문제에 대한 경험과 해결 방안을 공유하고 있습니다. 특히 웹소켓 문제 해결을 위해 다른 개발자의 리파지토리를 참고한 경험을 상세히 설명하며, 개발 과정에서 겪는 어려움을 솔직하게 드러냅니다.
(로또 사는 아빠) 살림 하는 엄마
(로또 사는 아빠) 살림 하는 엄마
(로또 사는 아빠) 살림 하는 엄마
(로또 사는 아빠) 살림 하는 엄마
(로또 사는 아빠) 살림 하는 엄마

2024년 4월 23일

한국투자증권 API 개발 시 어려웠던 점 한국투자증권 API 개발 과정에서 발생한 어려움과 해결 방안을 소개합니다. 계좌 개설, ISA 계좌 이전, 모의투자 미지원, 웹소켓 실시간 데이터 수신, 매매 방법론 이해 등 다양한 문제들을 겪었으며, 각 문제에 대한 해결책을 찾기 위해 노력했습니다.
(로또 사는 아빠) 살림 하는 엄마
(로또 사는 아빠) 살림 하는 엄마
(로또 사는 아빠) 살림 하는 엄마
(로또 사는 아빠) 살림 하는 엄마
(로또 사는 아빠) 살림 하는 엄마

2024년 4월 23일

테스트중. 두루미스? 이게 뭔데 두루미스 AI의 미리보기가 없습니다.
Jay LEE
Jay LEE
Jay LEE
Jay LEE

2024년 4월 6일