일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- js 내부함수
- js for 반복문
- Raspbian
- 아두이노
- 아두이노 https post
- MariaDB
- CentOS8
- 아두이노 ESP8266
- js 내부함수 반복문
- 리디렉션
- js 반복문
- redirect
- Centos Node js
- Apache
- 리디렉트
- 라즈베리파이 3b+
- 리다이렉트
- 아두이노 https
- 아두이노 DB
- 라즈베리파이
- 아두이노 fingerprint
- 구글 클라우드 플랫폼
- Today
- Total
목록전체 글 (50)
dinist
어떠한 글을 작성하면 DB에 저장이 되고, 메일로 알림을 발송하도록 되어있는 그누보드 기반 웹 사이트가 있다. 어느날 DB에는 저장이 되어 있지 않지만, 메일은 발송되었다는 연락이 있었다. 바로 테스트에 들어갔지만 DB에도 잘 저장되고 메일도 잘 전송되었다. 심지어 해당 문제 건만 DB에 저장되지 않았고 다른 사용자들의 게시글 저장과 메일 발송은 정상적이였다. DB에 저장되지 않은 게시글의 발송 메일을 보니 sql 쿼리에 영향을 줄 내용은 찾지 못해 무엇이 원인인지는 파악하지 못하였으나 앞으로 이러한 일이 또 발생할 수 있으므로 쿼리에 오류가 발생한다면 로그를 남겨야할 필요성을 느꼈다. ....... 중략 ....... if(function_exists('mysqli_query') && G5_MYSQLI..
그동안 Spring legacy 프로젝트만 다루다가 오랜만에 Spring Boot 프로젝트를 수정해야할 상황이 생겼다. Gradle Build를 하는 도중 에러가 발생하길래 뭐지? 하고 봤더니 https://repo.spring.io/lib-milestone/.... 401 Unauthorized 오류가 있었다. 이게 무슨일인가 하고 구글링좀 해봤더니 이런 글을 찾을 수 있었다. https://spring.io/blog/2022/12/14/notice-of-permissions-changes-to-repo-spring-io-january-2023 Notice of Permissions Changes to repo.spring.io, January 2023 A critical piece of infrast..
회사 웹 사이트의 PDF 출력 기능이 갑자기 안된다는 연락을 받았다. 로그를 확인해보니 만들어질 PDF 파일 내 이미지를 불러오지 못하는 문제였다. 브라우저에서는 문제 없이 이미지가 출력이 되는데.. 서버에서는 로딩을 못한다?? 서버의 문제임이 느껴졌다. PDF 파일 제작시 사용되는 이미지는 회사 이미지 서버를 통해 불러오는데 이 서버가 HTTPS로 운영중이다. 최근에 회사 이미지 서버의 갱신을 다른 사람이 했는데 그 과정에서 ROOT CA가 변경되어 발생한 문제였다. 또한 위와 같은 이미지의 오류가 발생한다면 ROOT 인증서 관련 오류일 가능성이 있다. JAVA 버전을 높은걸 사용했다면 발생하지 않았을 문제이지만 JAVA 7을 사용하고 있는 일부 사이트에서 문제가 발생했다. 이에 대응하기 위한 기록을 ..
PHP에서는 폴더 복사 함수가 없으므로 직접 구현해야한다. opendir로 대상 디렉터리 내의 모든 파일, 디렉터리를 확인하여 현재디렉터리, 상위디렉터리, 숨김파일 및 폴더(.으로 시작하는 이름)를 제외한 모든 파일과 디렉터리를 복사하는 코드를 작성해봤다. 만약 숨김파일 및 폴더까지 가져오려면 if 조건절의 내용을 수정해야한다. 하위 디렉터리에 있는 모든 파일까지 재귀호출로 가져온다. 재귀호출을 사용하였으므로 하위 폴더 및 파일의 갯수가 많을 경우 시간이 오래걸릴것이므로 하위 폴더 및 파일의 갯수가 많지 않을경우에 사용하는것을 권장. 복사를 위한 원본폴더의 구조 및 복사 코드 위치는 다음과 같다. directoryCopy.php 의 파일은 다음과 같다.
git pull을 수행 이후 해당 파일들의 소유자가 현재 로그인한 사용자로 지정되는데요 만약 pull 하는 계정과 실제 이 파일을 사용하는 사용자가 다를경우 퍼미션 에러에 봉착할 수 있습니다. 저도 docker를 활용한 php 개발을 진행하던중 이러한 상황이 발생하여 해법을 생각하던 중 git의 hook을 이용한 방법으로 문제를 해결해보기로 했습니다. git에서는 hook을 제공합니다. git에서 어떠한 이벤트가 발생했을때 특정 스크립트를 실행하도록 할 수 있다는 의미입니다. 아래 참조 사이트를 통해 사용 가능한 hook을 확인할 수 있습니다. https://git-scm.com/book/ko/v2/Git%EB%A7%9E%EC%B6%A4-Git-Hooks Git - Git Hooks 여기서 한가지 알아둘..
PHP 8.1 버전부터 Enum을 사용할 수 있어서 이를 활용해 보고 싶었습니다. 테스트용 DB 테이블과 더미데이터, 그리고 Eloquent를 활용한 select 테스트까지 진행해 보겠습니다. PHP - 8.2.5 Laravel - 10.12 php artisan make:model -fms// model, factory, migration, seeder artisan 명령으로 모델, 팩토리, 마이그레이션, 시더를 모두 만듭니다. - Migration
PHP - Enum 사용하기에 이어서 작성하는 2편입니다. 1편! https://dinist.tistory.com/44 PHP - Enum 사용하기 PHP 8.1 버전부터 Enum이라는 열거체를 사용할 수 있게 되었습니다. Enum이 도입되기 이전에는 Class를 활용하여 Enum과 비슷한 느낌으로 구현하여 사용했었는데요 PHP버전이 8.2까지 나왔으니 이제 Enum dinist.tistory.com - 메소드 Enum에서도 메소드를 구현할 수 있습니다. enum Fruit : int{ case Apple = 500; case Banana = 600; case Coconut = 700; case CoconuT = 800; public function getMsg(){ return match ($this)..
PHP 8.1 버전부터 Enum이라는 열거체를 사용할 수 있게 되었습니다. Enum이 도입되기 이전에는 Class를 활용하여 Enum과 비슷한 느낌으로 구현하여 사용했었는데요 PHP버전이 8.2까지 나왔으니 이제 Enum을 사용해 봅시다. - Basic Enumerations 기본적인 열거형의 모습은 다음과 같습니다. enum Fruit { case Apple; case Banana; case Coconut; case COconut; } 위 Fruit 열거형에는 3가지의 값이 선언되어 있습니다. 이 열거형의 값은 직접 사용해도 되고, 변수에도 할당할 수 있습니다. typePrinter 라는 함수에는 Fruit 열거형만 인자 값으로 넘길 수 있도록 타입힌팅 하였습니다. function typePrinter..