분류 전체보기 50

[PHP] MacOS에서 OpenSSL 문제 처리

PHP를 빌드했는데.. curl을 이용할 때나 file_get_contents에 url을 넣어서 텍스트를 읽어올 때 아래와 같은 SSL 인증서 오류가 나면서 동작이 되지 않는 문제가 생겼다. PHP Warning: file_get_contents(): SSL operation failed with code 1. OpenSSL Error messages: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed in /Users/gilchris/t.php on line 2 PHP Warning: file_get_contents(): Failed to enable crypto in /Users/gilchris/t...

PHP 2022.06.17

혹시라도 M1 Mac 에서 VirtualBox를 찾으시는 분이 계신다면..

!!! 지원 안합니다 !!! !!! 앞으로 지원 예정도 없습니다 !!! 참고 * https://forums.virtualbox.org/viewtopic.php?f=8&t=98742 virtualbox.org • View topic - M1 ARM Macs: Will Virtualbox be ported ? mpack wrote:I don't understand why people insist on not getting this simple fact: VirtualBox can't be ported to an ARM, because it's an x86 hypervisor, not a simulator. In VirtualBox your x86 guest code runs at near full speed..

개발자 일상 2022.06.17

사이트들의 비밀번호 요구사항이 왜 이상한가?

외국 서비스와 다르게 희한하게도 우리나라 서비스에서는 비밀번호를 8자 이상 영문, 숫자, 특수문자를 섞어서 쓰라며 외우지도 못할 비밀번호를 만들라고 강제하는 경우가 많다. 이는 관계 법령 때문이다. '정보통신망 이용촉진 및 정보보호 등에 관한 법률 시행령' 제47조 ~ 제55조에 따라서 인터넷으로 매출이 100억 이상이거나 뭐 기타 등등에 해당되면 정보보호 관리체계 인증을 받아야만 한다. https://www.law.go.kr/LSW//lsLinkProc.do?lsNm=정보통신망+이용촉진+및+정보보호+등에+관한+법률+시행령&chrClsCd=010202&mode=20&ancYnChk=0# 여기에서 말하는 '정보보호 관리체계'가 ISMS라고 부르는 것인데.. https://isms.kisa.or.kr/mai..

개발자 일상 2022.03.25

[Java] primitive type vs reference type

int와 Integer long과 Long 등등... 이렇게 java의 primitive type과 reference type 중에서 당연히 될 수 있으면 primitive를 쓰는게 낫다. 이유야 뭐... Object 타입에서 신경쓸게 더 많다. -> 실수할 여지가 많다. NPE나 반복적인 Object를 새로 생성해서 할당한다거나.. 메모리를 훨씬 많이 사용한다. 그런데... 이런 것들 사이에 동작 속도의 차이가 크다는 누군가의 의견을 보았고, 나도 그렇다고 생각을 했었는데... 예전에 어떤 분이 메모리 사용량 이외에 다른 차이가 나는게 있냐며.. 특히 DB에서 값을 읽어와서 Entity에 넣을 때 NULL이 들어올 수 있는 가능성이 늘 있으니 이 때에는 reference type을 사용하는 것이 맞지 ..

Java 2021.09.30

[Nginx] proxy에서 넘어오는 Content-Type 덮어쓰기

Nginx에서 Contet-Type을 결정하는 방법 nginx는 기본적으로 proxy에서 반환하는 헤더의 Content-Type을 그대로 사용한다. proxy를 호출하지 않는 경우에는 해당 URL의 확장자를 mime.types 파일의 내용에 대입해서 가져온다. mime.types 파일은 보통 /etc/nginx/mime.types 에 위치한다. 이걸 사용하려면 다음과 같이 nginx 설정 중 http 블록에서 include 해야 한다. http 블록은 보통 /etc/nginx/nginx.conf 내에 있다. http { # .... include /etc/nginx/mime.types; # .... } 그런데, proxy에서 반환하는 Content-Type을 사용하지 않고 mime.types에 있는 값을..

정리 2021.08.19

[Java] 한글 자음을 추출하는 유틸

한글 문자열을 넣으면 자음만 빼주는 유틸을.. 내가 필요해서 만들었다. 아래 내용은 내가 README.md에 적은 내용을 그대로 옮겨왔다. 프로젝트 문자열에 한글이 있는 지 확인 HangulUtils.isContainsHangul("This string includes 한글."); // true 문자열에서 자음 추출 HangulUtils.getFirstJaum("첫 자음 추출"); // ㅊ HangulUtils.getFirstJaum("the first character is English"); // T HangulUtils.getFirstJaum("1. Best practise"); // 1 HangulUtils.getFirstJaum(" first character is not English, 한글 ..

Java 2021.07.04

Ubuntu 20.04 terminal에서 wifi 잡기

netplan 설정 파일을 열어서 다음과 같이 적는다. sudo vi /etc/netplan/50-cloud-init.yaml network: ethernets: eth0: dhcp4: true optional: true version: 2 wifis: wlan0: optional: true access-points: "SSID-NAME-HERE": password: "PASSWORD-HERE" dhcp4: true wlan0 는 와이파이의 이더넷 이름이다. ip addr 로 알아낼 수 있다. 보통 wlan0 일 것이다. SSID-NAME-HERE에 접속하려는 wifi 이름을 넣고 PASSWROD-HERE에 wifi의 비밀번호를 넣으면 된다. 설정 파일을 저장한 후에는 netplan으로 설정을 다시 적용..

Linux 2021.04.12

[Java] Record

자동으로 생성자와 멤버를 가지는 클래스를 만들어준다. 쓸데없이 잔뜩 뭔가를 많이 코딩해야 하는 java인데 이걸 좀 줄여보겠다고 만든거라고 한다. kotlin의 data class와 거의 비슷하다고 한다. JDK14에서 preview로 처음 나왔고 JDK16에서 정식 스펙으로 포함되었다. 처음 나왔을 때와 지금 정식으로 포함된 내용이 조금 달라서 기존에 쓰여진 글들의 내용이 안맞는 경우도 있다. class 대신에 record라고 keyword를 사용한다. 이렇게 쓰면, record Point(int x, int y) { } 이 뜻이다. record Point(int x, int y) { // 이렇게 필드가 암묵적으로 생성된다. private final int x; private final int y; /..

Java 2021.03.26