프로그래밍
-
docker ubuntu 이미지에 Virtualenv 설치하기프로그래밍/Python 2021. 7. 12. 17:05
virtualenvvirtualenv는 격리된 파이썬 환경을 만들기 위한 도구로 다른 프로젝트에는 영향을 끼치지 않는다. #apt-get install python3-virtualenv#virtualenv 폴더명 위와 같은 명령어로 virtualenv를 설치한다. 만약 아래와 같이 ModuleNotFoundError가 출력된다면 virtualenv가 꼬여있다는 뜻이므로, 다음과 같은 명령어로 삭제후 다시 실행한다.No module named 'virtualenv.seed.via_app_data'#pip3 uninstall virtualenv 이상이 없다면 다음과 같이 출력된다.이후 source 명령어를 통해 해당 폴더로 진입해야 하는데, docker ubuntu 이미지의 쉘은..
-
[Flask] 콘솔 종료해도 백그라운드에서 실행프로그래밍/Python 2021. 6. 7. 22:04
Flask의 경우, 콘솔이나 ssh를 종료하면 flask또한 같이 종료된다. 해결하기 위한 방법은 아래와 같다. nohup python3 -u flask_app.py & nohup은 터미널이 종료되어도 표준 출력인 콘솔 출력은 nohup.out 파일에 계속해서 기록된다. 백그라운드로 실행된 프로세스를 종료하기 위해서는 ps명령으로 pid를 확인한 후, kill하면 된다. ps -ef | grep [프로세스명] # 혹은 ps -aux kill -9 [PID]
-
[Django] DisallowedHost 오류 Invalid HTTP_HOST프로그래밍/Python 2021. 6. 7. 21:44
DisallowedHost DisallowedHost 오류는 Django 웹 프레임워크에서 발생하는 일반적인 오류 중 하나이다. 이 오류는 보안상의 이유로 Django 애플리케이션이 허용되지 않은 호스트에서 요청을 받았을 때 발생한다. 문제 상황 django에 도메인을 연결해서 외부 테스트를 하려고 하면, DisallowedHost 라는 메시지가 뜨면서 연결이 되지 않는다. 이는, 디버깅 모드에서 ALLOWED_HOSTS 변수가 빈 리스트일 경우 ['localhost', '127.0.0.1', '[::1]'] 의미가 되어 로컬 호스트에서만 접속이 가능하다. 디버깅 모드를 해제하면 일체 접속이 허용되지 않고 명시적으로 지정한 호스트에만 접속할 수 있다. 수정하기 위해서는 settings.py를 수정하여 A..
-
[Jupyter] pandas matplotlib 한글 폰트 설치하기프로그래밍/Python 2021. 5. 22. 15:09
Pandas로 한글 데이터 불러오기 pandas를 통해 한글이 포함된 csv를 불러오는 방법은 아래와 같다. import pandas as pd df = pd.read_csv('./data.csv', sep=',', encoding='utf-8') df.head() 인코딩의 문제가 없으므로, 해당 파일의 머리 부분을 잘 불러온다. 하지만, 이를 plot()함수를 이용하여 변환시키면 아래와 같이 인코딩이 깨져 네모로 표현된다. 해결 방법 기본적으로 Ubuntu에는 나눔글꼴이 설치되어 나오나, JupyterHub Docker Image에는 나눔글꼴이 설치되어 있지 않은 우분투 기반 Image이므로, 다음과 같은 명령어를 쉘에 입력하여 나눔글꼴을 설치한다. sudo apt-get install fonts-na..
-
Apache MINA와 WebSocket으로 SSL통신하기.프로그래밍/Java 2020. 6. 9. 23:36
Apache MINA Apache MINA는 Java에서 흔히 쓰는 비동기 쓰레드 방식의 Server이다. 이전에 작성했던 포스팅에 이어서 작성한다. https://syudal.tistory.com/entry/Apache-MINA와-WebSocket으로-통신하기 Apache MINA와 WebSocket으로 통신하기. Apache MINA는 아래와 같은 구조를 띄고 있다. IoService와 IoHandler사이에 IoFliter들을 추가하여 원하는 스타일의 소켓 통신을 할 수 있다. WebSocket같은 경우에도 HandShake과정과 같은 구현을 IoFliter를.. syudal.tistory.com 대부분의 사이트에서 HTTPS가 강제됨에 따라, 일반 웹소켓 요소(ws://)가 들어가 있으면 ERR_..
-
HttpWebRequest 루트 인증서와 해당 도메인 인증서 확인하기.프로그래밍/C# + Unity 2020. 5. 18. 19:20
RemoteCertificateValidationCallbackRemoteCertificateValidationCallback은 HTTPS 인증서를 확인할 수 있게 해준다. 단, UNITYTLS_X509VERIFY_FLAG_NOT_TRUSTED'라는 메시지가 나오면서 Unity상에서는 위와 같은 방법을 사용할 수 없다. 왜냐하면 현재와 같이 루트 인증서와 비교하여 검증하기 위해 OpenSSL/MbedTLS를 사용하는 대신 시스템별 TLS API를 통해 검증을 수행함으로써 이 문제를 해결할 수 있을지 모르지만, 이 해결방법은 서로 다른 운영체제에서 작동되지 않을 가능성이 크기 때문에 Unity상에서 구현을 하지 않았다고 한다. https://docs.microsoft.com/ko-kr/dotne..
-
스마트 에디터2 사진 업로드 오류 해결프로그래밍/Web(CSS + HTML + JS + PHP ) 2019. 12. 22. 15:14
스마트 에디터2 ? 네이버에서 관리하는 오픈소스중 하나인 스마트 에디터는 JavaScript로 구현된 웹 기반의 WYSIWYG 편집기이다. 현재 네이버는 자신들이 새로 개발한 스마트 에디터3를 사용하고 있지만, 스마트 에디터2도 쓸만하다. 하지만, 사진 업로드 예제를 수행하던 중 아래와 같은 오류가 발생했다. 서버 URL 셋팅을 제대로 하였지만, 자꾸 위와 같은( [가이드]사진 업로더할 서버URL셋팅이 필요합니다.-onAjaxError )와 같은 에러가 날 괴롭혔다. 오류를 보기위해 로직을 (attach_photo.js파일 onAjaxError함수.) 아래와 같이 변경하였다. 1 2 3 function onAjaxError (e){ alert("[가이드]사진 업로더할 서버URL셋팅이 필요합니다.-onAj..
-
[C#] 기본 연결이 닫혔습니다. 보내기에서 예기치 않은 오류가 발생했습니다.프로그래밍/C# + Unity 2019. 11. 18. 17:40
C#에서 HttpWebRequest를 이용하여 서버와 통신할 때, '기본 연결이 닫혔습니다. 보내기에서 예기치 않은 오류가 발생했습니다.'와 같은 오류가 나온다면, 해결방법은 다음과 같다. 1. 해당 프로젝트의 프레임워크 버전을 4.5.2이상으로 올린다. 2. 아래 코드를 적용한다. ServicePointManager.SecurityProtocol |= SecurityProtocolType.Ssl3; ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls; ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls11; ServicePointManager.SecurityProtocol |..