반응형

All 196

한국인 개발자를 위한 ChatGPT 최적의 설정 (자동 번역)

ChatGPT는 영어로 학습된 데이터가 가장 많기 때문에, 질문을 영어로 하는 것이 가장 좋은 답변을 얻을 수 있습니다. 그러나 영어로 질문하면 영어로 답변을 주기 때문에 한국어로 다시 번역하거나, 질문할 때 한국어로 답변을 해달라는 부분을 추가해야 합니다. 매번 작성해야 하는 이 과정이 불편하기 때문에 편리하게 할 수 있는 방법을 고민하다가 발견한 방법입니다. 제가 해본 방법들을 나열하고, 단점들과 한글로 답변 받기 첫 번째 방법. Custom instructions ChatGPT 로그인을 하게 되면, 좌측 하단에 본인의 정보 아이콘이 활성화됩니다. 클릭하면 아래와 같은 목록이 나오고, Custom instructions 를 클릭합니다. 이것은 ChatGPT가 나의 질문과 답변을 최적화 하기 위해 사전..

Info 2024.02.05

HTTPS에서 경고 없이 HTTP 리소스를 호출하는 방법

인증서가 있는 사이트에서 인증서가 없는 사이트를 호출할 때 mixed content 오류가 발생합니다. 우선 인증서가 있는 사이트에서 인증서가 없는 사이트를 호출하는 것은 문제가 될 수 있으므로, 인증서를 사용하는 것이 가장 좋은 방법입니다. 그러나 내부에서만 사용하는 사이트이거나 인증서를 구매할 수 없는 환경이라면 아래와 같은 방법으로 해결할 수 있습니다. 기본적인 Nginx 설정 방법에 대한 지식이 없어도 아래 설정을 따라만 해도 가능합니다. Nginx로 proxy_pass 설정하기 인증서가 있는 사이트라면, 해당 인증서를 사용해서 Nginx 설정을 하여 우회할 수 있습니다. Nginx가 중개자 역할이 되어 보안 연결을 호출한 것처럼 위장할 수 있습니다. Nginx 설정 server { # liste..

Macbook :: 클립보드 앱 Maccy 무료로 이용하기

Macbook에서는 클립보드 내역을 저장하고 꺼내쓸 수 있는 클립보드앱 Maccy가 있습니다. Maccy앱을 먼저 간단히 설명하자면, 앱을 열면 클립보드 내역을 확인할 수 있는 공간이 나와요. 만약 제가 1,2,3,4,5를 순서대로 복사를 했다고 가정을 할게요. 그럼 이렇게 클립보드 내역에 보관돼요. 텍스트 뿐만 아니라 말그대로 클립보드 내역이 그대로 보관되는 거라서 이미지도 보관됩니다. 근데 이거 AppStore에서는 유료거든요? 명령어를 통해서 다운로드하면 무료로 받을 수 있어요. brew install maccy그냥 터미널 열고 위의 명령어만 입력하고 기다리면 알아서 다운로드 됩니다. Homebrew를 사용한 적이 없거나 사용한지 오래 됐다면 업데이트 때문에 시간이 좀 걸릴 거예요. 그래도 기다리면..

Info 2024.01.26

Edge 브라우저 사용 시 'Alt+Tab' 탭 전환 막기

Window에서 Edge 브라우저를 사용할 때, Alt+Tab 단축키로 탭 전환이 되는 것이 불편했습니다. 어차피 Ctrl+Tab 기능으로도 탭 전환이 되기 때문에 Alt+Tab은 제거하고 프로그램끼리만 전환되기를 원하기 때문에, 이 기능을 제거하는 방법을 작성합니다. 탭 전환 기능 제거 edge://flags/ edge에서 해당 링크로 이동 Browser tab experiences in Windows 검색 Enable -> Disable로 변경 하단에 뜨는 다시 시작을 누르면 Edge가 다시 시작되면서 적용됩니다.

Info 2024.01.12

나의 서버에 GitLab 설치하기 (Git, GitLab 설치 및 명령어)

권장사양 CPU : 4코어 이상 권장 메모리 : 4GB 이상 권장 (실행만 해도 3.5GB 정도 사용함, 사용자가 많을수록 많이 필요) 스토리지 : 데이터를 저장하기에 충분한 용량 필요 데이터베이스 : GitLab에 내장되어 있는 PostgreSQL을 기본적으로 사용하지만, 따로 데이터베이스를 사용하기 위해서 별도의 설정이 필요 (이 부분은 다루지 않습니다.) 나의 사양 운영체제 : CentOS 7 CPU : 4코어 grep 'cpu cores' /proc/cpuinfo | uniq 메모리 : 4GB free -h 디스크 : 459GB df -h Git 설치 시스템 업데이트 CentOS를 최신 상태로 업데이트한다. # CentOS 패키지 관리 도구를 최신상태로 업데이트 sudo yum up..

Development/Git 2023.12.04

CentOS 7 에서 git version 2.x 이상 설치하기

CentOS 7이 아니더라도 버전이 낮으면 sudo yum install git을 하더라도 git version 2.x 이상이 설치되지 않습니다. 저도 버전 1.8이 설치되어서 삭제 후 다시 설치했습니다. 기존에 설치된 git 제거 sudo yum remove git 의존성 설치 CentOS를 최신 상태로 업데이트한다. # CentOS 패키지 관리 도구를 최신상태로 업데이트 sudo yum update # 각종 코드를 컴파일하고 빌드하는 데 필요 sudo yum groupinstall "Development Tools" #Git을 빌드하는 데 필요한 추가 의존성 설치, 지금 설치해야 빌드 및 설치 과정에서 오류가 발생하지 않음. sudo yum install gettext-devel openssl-dev..

Development/Git 2023.11.29

리소스 직접 접근 차단하고 소스에서만 허용하기 (PHP + .htaccess)

출발점 이 글을 작성한 이유는 www.example.com/file/font.ttf 에 폰트가 저장되어 있고, 해당 url로 접근하면 폰트를 직접 접근하여 탈취할 수 있기 때문에 이를 방지하고 싶었습니다. 소스에서는 접근이 가능해야 하고, 외부에서 url을 통해 직접 접근하는 것은 막아야 했습니다. .htaccess 우선 직접 접근을 막는 방법은 간단합니다. 디렉토리가 file 이면 해당 디렉토리에 .htaccess에 아래 코드를 추가합니다. 만약 .htaccess가 없다면 새로 만들어서 추가합니다. Order Allow,Deny Deny from all 차단하고자 하는 확장자를 모두 추가합니다. PHP 이제 file을 읽어올 PHP소스를 작성합니다. 예를 들어 fileLoader.php 로 작성했습니다..

Programming/PHP 2023.11.23

DB에 저장된 JSON 데이터의 키 값을 쿼리로 추출하기

추출 예시 DB에 JSON 형식을 문자열로 그대로 저장했을 경우 이것을 쿼리로 추출하는 방법입니다. { "filename":"test.png", "buttons":[ {"name":"test_name","url":"test_url"}, {"name":"test_name2","url":"test_url2"} ] }만약 이렇게 저장된 JSON 형식의 문자열 데이터가 있을 때, "filename"의 값인 "test.png" 만 가져오는 것이 목표입니다. 예시 DBMS는 MySQL입니다. 추출 쿼리 MySQL 5.7 버전 이상 (MariaDB 10.3 이상) MySQL 5.7 버전 이상부터 사용 가능하며, 내장 함수 중 하나인 JSON_EXTRACT()를 사용할 수 있습니다. JSON 데이터가 저장된 컬럼에서 ..

Nginx 환경 설정으로 원하는 자원(CSS,JS,이미지)만 캐싱하기

Nginx 설정 (수정 전) server { listen 80; location / { auth_request /auth; proxy_pass https://front_new; } #인증 location = /auth { ... } } 문제점 Nginx 환경 설정으로 자원(CSS,JS,이미지)만 캐싱한 이유 Angular 프로젝트의 웹서버로 Nginx를 사용하고 있습니다. 메인 화면에서 로그인이 되지 않은 상태면 로그인 url로 넘기고 있는데, 문제는 이 과정에서 Nginx에서 설정한 auth_request가 호출되지 않고 브라우저 캐시로 인해 redirect 되고 있습니다. 예를 들어 'example.com/' 을 호출하면 'example.com/login' 으로 redir..

Connection Pool 사용 시 release() 코드 위치의 중요성

관리하고 있는 채팅 시스템이 있는데 데이터베이스 연결 시 Connection Pool을 사용하고 있습니다. 코드는 커넥션을 얻고, 데이터베이스 결과값을 가져온 후에 다시 커넥션을 반환하는 과정으로 작성되어 있습니다. 커넥션 반환 문제 그러던 중 커넥션 풀을 사용할 때 문제가 생겼습니다. 커넥션이 계속 증가하고 있었는데, 그러다보니 커넥션 수 제한에 걸려서 서버 오류가 발생하기도 했습니다. 이 문제를 해결하기 위해 pool 생성할 때 connectionLimit을 크게 올려보기도 했지만 채팅 서버에서는 오류가 나지 않지만, DB서버 과부하로 처리가 매우 느려졌습니다. 마찬가지로 max_connections, wait_timeout 도 변경했지만 사용량이 많을 때는 속도가 상당히 떨어졌습니다. 그래서 이런 ..

Programming/Node.js 2023.09.22
반응형