본문 바로가기

전체 글

(48)
[PHP] Laravel - 사용자 정의 클래스 본 포스팅은 PHP7.4 / Laravel 8 버전을 기준으로 작성되었습니다. 이번 포스팅에서는 어렵지는 않지만 간과하기 쉬운 사용자 정의 클래스를 생성하는 방법에 대해 알아보겠습니다. Laravel에서 개발을 하다 보면 주로 app\Http\Controllers 경로에서 주로 작업을 많이 하게 됩니다. DB 접속도 Eloquent 덕분에 여기저기 파일을 뒤적이지 않아도 간단하게 처리할 수 있기 때문에 컨트롤러가 많은 처리를 담당하게 됩니다. 이때 컨트롤러가 처리하는 일이 많아질 수록 코드가 복잡해지고 중복되는 함수가 발생할 가능성이 높아집니다. 이러한 이유 때문에 별도의 사용자 정의 클래스가 필요합니다. 본 포스팅에서는 필자가 실무에서 활용하는 파일 관리 구조를 예시로 기술해보도록 하겠습니다. (반드시..
[Linux] vim 코드 자동완성 사용하기 리눅스에서 파일을 열거나 코드를 작성할 때 자주 쓰이는 도구 중 하나가 vim입니다. 리눅스에서는 이 vim을 이용해 파일을 열거나 코드를 작성할일이 많은데요, 구문 강조나 코드 시작, 끝 지점을 표시해주는 등 기본 기능만으로도 충분히 생산성 있게 코드를 작성할 수 있습니다. 아마 IDE 환경에 익숙한 분들은 vim을 쓰다 느끼는 대표적인 불편함이 아마 코드 자동완성일것입니다. vim에서는 AutoComplPop 패키지를 이용하는 것으로 자동완성과 유사한 형태로 사용할 수 있는데, 이번 포스팅에서는 이 AutocomplPop 사용에 대해 다뤄보도록 하겠습니다. 우선 아래 홈페이지에서 최신 버전의 vim-autocomplpop.zip을 받습니다. www.vim.org/scripts/script.php?sc..
[Linux] 파일 접근 허가 상수 Linux 커널에 대해 예문을 참고해가며 공부하다 메모해두면 차후 유용할 것 같은 정보를 두서없이 남깁니다. 아래는 시스템이 기동 할 때, 커널의 디버그 디렉터리에 rpi_debug라는 폴더를 생성하고 어떠한 값을 val이라는 파일명으로 저장하는 커널 모듈 함수입니다. static int __init rpi_kernel_debug_debugfs_init(void) { printk("===[%s][L:%d]===\n", __func__,__line__); rpi_kernel_debug_debugfs_root = debugfs_create_dir("rpi_debug", NULL); debugfs_create_file("val",S_IRUGO, rpi_kernel_debug_debugfs_root, NULL,..
SSL connection error로 인해 외부 MySQL 접속이 안되는 문제 해결 본 기록은 우분투 리눅스를 기준으로 작성되었습니다. 터미널에서 mysql 명령어로 외부 MySQL 데이터 베이스에 접속하려 할 때, 다음과 같은 에러로 인해 접속이 안 되는 경우가 있습니다. 주로 AWS와 같은 클라우드 플랫폼에 설치 되어있는 MySQL에 접속 할 경우 발생할 수 있는 이슈입니다. ERROR 2026 (HY000): SSL connection error: error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol 이 때는 openssl 설정 정보를 수정해 주어야 합니다. 아래의 명령어로 openssl.cnf 파일을 열고 내용을 추가합니다. $ sudo vim /usr/lib/ssl/openssl.cnf # 파일 앞..
[PHP] Ubuntu - Laravel 프로젝트 Heroku에서 MySQL 사용하기 이번 포스팅에서는 이전에 예고했던 DB를 포함한 Laravel 프로젝트를 Heroku에 배포하는 방법에 대해 알아보겠습니다. 본론에 앞서, 본 포스팅에서는 Laravel 프레임워크에 대한 지식이 있음을 전제합니다. Heroku에서 MySQL을 추가하고 프로젝트의 테이블과 데이터를 삽입하는데 migrate, seed 명령을 사용하는데, 이에 대한 자세한 설명은 포함하지 않으므로 참고해주세요. 또한, 이 포스팅을 참고하기 전에 Heroku 계정 발급 및 애플리케이션 생성 및 프로젝트 배포까지 완료가 되어 있어야 하며, Linux에 Heroku CLI도 설치되어 있어야 합니다. 이에 대한 것은 아래의 링크를 사전에 참고하시면 도움이 됩니다. 2020/10/09 - [Dev/PHP] - [PHP] Ubuntu ..
[PHP] Ubuntu - Laravel 프로젝트 Heroku에 배포하기(DB 없음) 본 포스팅에서는 Laravel 프로젝트를 Heroku에 배포하는 방법에 대해 알아보겠습니다. 본 포스팅은 Ubuntu Linux 사용자를 기준으로 하며, DB를 사용하지 않는 Laravel 프로젝트가 이미 준비되어있다는 것을 전제로 하고 있습니다. (DB를 연동한 Laravel 프로젝트 배포는 차후 다뤄보도록 하겠습니다.) Heroku는 PaaS (Platform as a Service) 클라우드 플랫폼입니다. PaaS는 사용자가 개발하는 애플리케이션을 제외한 서버, 프레임워크, OS 등 모든 부분을 클라우드 상에서 제공해 주는 방식의 서비스를 의미합니다. Heroku에 개인이 개발한 애플리케이션을 업로드하면 프로젝트의 언어, 프레임워크 정보를 알아서 인식, 빌드해서 서비스 배포까지 자동으로 해주는 편리..
[Spring] Spring Boot 시작하기 (7) - MyBatis에서의 DataBase 다중 연결 포스팅 시리즈 2020/09/28 - [Dev/Spring] - [Spring] Spring Boot 시작하기 (1) - 프로젝트 생성 2020/09/29 - [Dev/Spring] - [Spring] Spring Boot 시작하기 (2) - Thymeleaf 뷰 템플릿 사용 2020/09/30 - [Dev/Spring] - [Spring] Spring Boot 시작하기 (3) - Lombok 사용 기본 2020/10/05 - [Dev/Spring] - [Spring] Spring Boot 시작하기 (4) - Mybatis, MySQL 연동 2020/10/06 - [Dev/Spring] - [Spring] Spring Boot 시작하기 (5) - log4jdbc를 이용한 Query로깅 2020/10/07..
[Spring] Spring Boot 시작하기 (6) - 에러 페이지 처리 포스팅 시리즈 2020/09/28 - [Dev/Spring] - [Spring] Spring Boot 시작하기 (1) - 프로젝트 생성 2020/09/29 - [Dev/Spring] - [Spring] Spring Boot 시작하기 (2) - Thymeleaf 뷰 템플릿 사용 2020/09/30 - [Dev/Spring] - [Spring] Spring Boot 시작하기 (3) - Lombok 사용 기본 2020/10/05 - [Dev/Spring] - [Spring] Spring Boot 시작하기 (4) - Mybatis, MySQL 연동 2020/10/06 - [Dev/Spring] - [Spring] Spring Boot 시작하기 (5) - log4jdbc를 이용한 Query로깅 2020/10/07..