본문 바로가기

728x90
반응형

전체 글

(255)
React Native: Storage # Async # Keychain (Secure) # Encrypted React Native에서 여러가지 상태를 보관하기 위해서 Storage를 사용할 수 있다.Web에서의 localStorage와 비슷한 기능을 하는데보안과 관련하여 다음과 같은 도구들을 활용할 수 있다 (Redux는 제외하고 설명) - Async Storage- Keychain (Secure Storage)- Encrypted Storage Async Storage는 보안 적용이 안되어있다.즉, 보안적용이 안되어 있는 모바일 버전의 localStorage라고 생각하면 된다. 보안 적용과 관련하여Keychain과 Encrypted Storage를 둘 중에 선택이 가능한데 다음과 같은 차이가 있다고 보면 된다. Keychain 방식iOS에는 자체적인 보안 방식인 Keychain 시스템이 있다.Android ..
Bluetooth: ESP32 - examples - gatts_table_create_demo GATT Server app_main  - nvs_flash_init(),    esp_bt_controller_init(), esp_bt_controller_enable(),    esp_bluedroid_init(), esp_bluedroid_enable()    esp_ble_gap_register_callback(gap_event_handler);    까지는 일반적인 bluetooth초기화 과정과 동일   gatts example이므로 esp_ble_gatts_register_callback(gatts_event_handler); 있음    esp_ble_gatts_app_register(ESP_APP_ID);  esp_ble_gatt_set_local_mtu(500);  잘 못보던 두가지 함수..
Web: Session # 세션 공유 # PHP, Nginx 예제 웹에서 "세션(Session)"은 클라이언트(예: 웹 브라우저)가 서버와 상호작용하는 동안 유지되는 일련의 상호작용을 의미합니다. 세션은 사용자가 웹 사이트를 방문할 때 시작되어 사용자가 사이트를 떠날 때 종료되기도 합니다. 세션은 사용자의 상태(예: 로그인 정보, 쇼핑 카트의 내용 등)를 저장하고 관리하는 데 사용됩니다.세션의 주요 특징과 기능:상태 유지: HTTP 프로토콜은 상태가 없는(Stateless) 프로토콜이므로, 세션은 사용자의 상태 정보를 서버에 저장하여 연속적인 요청 사이에 사용자 정보를 유지합니다.식별과 관리: 세션 ID를 통해 서버는 각각의 클라이언트를 식별하고 각 사용자의 상태를 관리할 수 있습니다. 이 ID는 보통 쿠키에 저장되어 클라이언트의 브라우저를 통해 서버로 전송됩니다.보안..
PHP: 세션 id를 검증 - Nginx를 활용하여 접근 허용/비허용 하는 예제 /profile/[mb_id] 를 통해서 접근시, mb_id에 해당하는 session id를 확인하고,검증 실패시 다른곳(/login)으로 redirect 또는 비허용 페이지임을 안내하는 예제 1. profile.php 예제 커밋https://github.com/Junanjunan/next_php/commit/e6d9d1261818855f884a6a4021776a7fcdd1850e  2. Nginx 설정server { listen 80; server_name localhost; root /home/user/my_php_project; index index.php index.html index.htm; location / { try_files $uri $uri/ =4..
PHP: php 설치, php-fpm 설치, nginx 연결 Ubuntu 기준 sudo apt updatesudo apt install php php-fpm sudo nano /etc/nginx/sites-available/default로 nginx 설정server { listen 80; server_name example.com; root /var/www/html; # index.php 추가 index index.php index.html index.htm; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php..
Nginx: Ubuntu에서 nginx 설치후 systemctl restart nginx 가 안될 때 Ubuntu 설치 후, 80포트가 이미 사용중인 경우가 있다.이럴 경우 80포트로 연결해놓은 Nginx가 실행이 안되는데, 보통은 apache2가 실행되어 있는 경우가 있는거 같다.80포트가 apache2에 의해 실행되고 있으면, 다음과 같이 apache2를 중지 시키고다시 nginx를 restart하자sudo systemctl stop apache2sudo systemctl restart nginx
Next JS: Image component # 반응형 # mobile # desktop # md:block # md:hidden https://nextjs.org/learn/dashboard-app/optimizing-fonts-images You'll notice the class hidden to remove the image from the DOM on mobile screens,and md:block to show the image on desktop screens. -> Image component에서   사이즈에 따른 반응형 뷰를 className을 통해 적용   md 사이즈 기준을 통한 예: md:hidden / md:block * md:block에 따른 desktop 사이즈 이미지  * md:hidden에 따른 mobile 사이즈 이미지  예제 커밋https://github.com/Junanjunan/nextjs-d..
ESP32: # Watch dog reset # save in NVS and load saved data from NVS # 예제 커밋https://github.com/Junanjunan/esp/commit/86e06f908735cde9eaf66660129132929b7da17c 내부에 Flow 정리

728x90
반응형