본문 바로가기

Computer10

Laravel에서 Contoller Class를 찾지 못할 때... 오랜만에 새로운 프로젝트를 Laravel 8로 개발 시작. 테스트 코드를 먼저 작성하는 개발을 한번 해보려 했으나... 시작부터 당황하게 만들어준다. 라우트에 다음과 같은 경로를 추가 해주고 테스트를 실행 Route::get('/', 'BaseController@index')->name('site-index'); 그랬더니.... Expected response status code [200] but received 500. The following exception occurred during the request: ReflectionException: Class "BaseController" does not exist in ... 컨트롤러를 찾을 수 없다고? Laravel 양반 이게 무슨 소리요... .. 2021. 10. 15.
Ubuntu에서 Nginx + PHP + MariaDB 설치. 요즘 들어 Ubuntu를 자주 쓰고 있어서 이참에 정리 한번 해봄. Nginx와 Mariadb 등 우분투 저장소들은 우분투 버전별 코드네임이 붙어 있는 경우가 종종 보이길래 그 부분까지 알아서 적용되게 함. 아래 코드들 중 `lsb_release -cs` 부분이 우분투의 코드네임을 가져오는 부분이다. Ubuntu 16.04, Ubuntu 18.04, Ubuntu 20.04 등 버전에 관계 없이 릴리즈 정보를 가져와서 사용하니까 버전마다 코드네임이 뭐였는지 안 찾아도 되서 편해졌다. 1. 기존에 등록되어 있는 APT 저장소들을 제거 sudo cat /dev/null > /etc/apt/sources.list 2. kakao mirror 저장소 URL 입력. echo "deb http://mirror.kak.. 2020. 12. 2.
mysql 5.7 설치 후 root password 확인. /etc/my.cnf 에서 로그 파일 경로 확인 log-error=/var/log/mysqld.log 해당 로그 파일에서 temporary password 검색. cat /var/log/mysqld.log | grep "temporary password" 그러면.. [Note] A temporary password is generated for root@localhost: HTpk:ldnY1b, 이런식으로 나오는게 있다. 이번에 생성된 비번은 HTpk:ldnY1b, 로그인 해서 비번 바꾸면 됨. 비번은 영어대문자, 소문자, 특수문자 섞어서 8자리 이상 되어야 하는듯 싶다. 안그러면 ERROR 1819 (HY000): Your password does not satisfy the current policy.. 2017. 1. 9.
Microsoft Translator API 사용하기. 구글 번역 API는 유료니까 패스. MS Bing API를 써 봅시다~~ MS Live 계정이 있어야 됨. 그냥 gmail이나 naver메일 이런걸로 가입 ㄱㄱ https://datamarket.azure.com/dataset/bing/microsofttranslator 200만자 까지 무료로 쓸 수 있는거 있음.. 캡쳐 하기 귀찮으니..https://www.conory.com/xe_product_manual/47924 이 문서 참고. 젤 마지막꺼는 저 글 쓴분이 개발한 애드온 사용할때 쓰는거니까 패스.. PHP 예제는https://blogs.msdn.microsoft.com/translation/walkthrough/phptranslator/여기서.. CURL 써서 번역해 주는거임. Step2, Ste.. 2016. 12. 26.
NFS mount : reason given by server: Permission denied 발생시.. SERVER쪽 디렉토리 권한도 777에혹시나 해서 nobody nobody로 변경도 해 보고.. 방화벽은 아직 안 물려있지만 혹시나 해서 nfs 포트도 고정 시켜보고iptables는 초기 설정 상태에서 전부 주석처리 한지 오래... (사실 이것때문에 다른 오류도 났었음..) 알고봤더니 경로를 잘 못 입력한것.... 문득 입력했던 커맨드를 다시 보는데...뭔가 이상하다 싶어서 자세히 보니... NFS 서버쪽 경로에 /가 빠져있네..... mount -t nfs SERVER:/NFSShare /NFSShare 이렇게 입력해야 할것을 mount -t nfs SERVER:NFSShare /NFSShare 이렇게..... / 하나 추가 해주고 나니 문제 없이 마운트 성공... 어제부터 머리 쥐어뜯고 있었는데 가장.. 2014. 4. 30.
jQuery 기반의 jqwidgets... 라이센스 하나 사면 Grid, Chart, Gauge, Button 등등 다양한 위젯을 사용 할 수 있다. (29가지 위젯..) 라이센스 구입비용도 그리 부담 되는 수준은 아닌거 같고.. 게다가 상용 목적이 아니라면 그냥 무료다. 이걸 사용해서 약 3주에 걸친 노력 끝에 계획했던 기능 하나를 만들었는데. jQuery부터 익숙하지 않은데 Grid까지 적용하려니 힘들다. 그래도 익숙해지면 꽤나 빠른 개발 속도가 나올거 같기도 하니 좀 더 해봐야지... 자세한건 http://www.jqwidgets.com 여기에... jqGrid하고는 다른것.. 2013. 4. 11.
procedure, function, package에서 테이블 또는 뷰가 없다는 에러 메세지. procedure, function, package에서ORA-00942: 테이블 또는 뷰가 존재하지 않습니다라는 오류가 발생 할때.. 1. 메세지 내용 그대로, 생성하지 않거나, 잘 못 입력한 테이블이나 뷰가 존재 하는지 확인. 2. 모든게 정상인 경우, 다른 OWNER 소유의 TABLE / VIEW라면, GRANT를 확인 3. GRANT도 정상이라면.. procedure / function / package를 호출 하는 owner와, 권한을 부여받은 owner가 동일한지 확인.ex) A owner 소유의 tblA가 존재 하고, b owner에 해당 테이블을 사용하는 procedure를 작성하였을때, 이 procedure를 c 라는 owner가 호출 해서 사용하는 경우, b owner에 a.tblA에 대.. 2013. 3. 25.
오라클 주요 Schema들.. 자주 써먹는 Schema들.. USER_OBJECTSUSER_TABLESUSER_COLUMNSUSER_VIEWSUSER_TRIGGERSUSER_SOURCE -- Function, Procedure, Package 좀 더 많은 스키마는 여기에서...http://whdvy777.tistory.com/entry/%EC%98%A4%EB%9D%BC%ED%81%B4-%EA%B0%81%EC%A2%85-%EC%8A%A4%ED%82%A4%EB%A7%88-%EC%A1%B0%ED%9A%8C 추가로...접두사로 USER 를 사용 중인데.. 이건 해당 OWNER의 정보를 조회 할때 사용한다. 자기 자신의 정보 이외에, 자기가 권한을 가진(?) 다른 OWNER의 정보를 함께 조회 하고자 하는 경우ALL_USERS, ALL_TAB.. 2013. 3. 25.
Jasperreport 4.7.0에서 Landscape가 역회전된 상태로 생성 될때.. 몇주에 걸쳐서 정보를 찾아보고 하다가..오늘 문득 생각난게 있어서 시도를 해 봤더니...일단은 의도한것처럼 나오긴 한다...좀 더 테스트를 해 봐야 할것 같긴 하지만..... 여하간...문제가 되었던건A4사이즈의 report 문서를 portrait 설정으로 PDF를 생성하면 정상적으로 생성 되는데,landscape로 바꿔서 생성하면, 90° 시계반대방향으로 회전한 상태로 생성이 되었다. (참고) 이걸 어떻게 해결 할까 머리를 쥐어 뜯다가..문서 포맷은 portrait으로 놔두고, 사이즈만 가로세로 바꿔서 생성하면 어떨까 싶어서 해 봤더니.. 원하는 결과가 나왔다. 하하하....몇주간 머리 쥐어뜯은게 허무해지는 순간이다... 2013. 3. 22.
jQuery에서 ajax 사용 시, json 처리 방법 (JAVA) 데이터가 배열인 경우.. -- JAVA StringBuffer sb = new StringBuffer(); sb.append("["); for(Iterator it = listVo.iterator(); it.hasNext();) { VO vo = it.next(); sb.append("["); sb.append("'"+vo.getCol1()+"',"); sb.append("'"+vo.getCol2()+"',"); sb.append("'"+vo.getCol3()+"',"); sb.append("'"+vo.getCol4()+"'"); sb.append("]"); if(i++ < size-1) sb.append(","); } sb.append("]"); response.setContentType("text/j.. 2013. 3. 21.