본문 바로가기

Programming

(15)
당장 서버를 돌려보자(3) - 아파치 설정 앞에 작성된 글을 보고 순차적으로 진행한다면 아주 큰! 도움이 됩니다. - 당장 서버를 돌려보자(1) - 우분투에 APM(apache + php7 +mysql) 셋팅 - 당장 서버를 돌려보자(2) - 우분투에 계정생성, ftp 설치 ftp까지 설치하면 사실 그냥 사용해도 상관없다. 다만, 가상서버에 여러개의 도메인을 연결하여 쓸려고 하는경우는 아파치 가상호스트를 설정해 주어야한다. 가상호스트하기 이전에, 메인 주소의 경로를 변경하는 방법부터 보자. 아마 앞서 작성한 글대로라면, 현재 메인페이지는 /var/www/html 로 설정되어져 있다. 해당 위치를 변경 및 설정하는 방법이다. 아래 명령어로 해당폴더로 이동후, 기본값인 000-default.conf를 열자. 물론 그전에 000-default.conf..
mysql 에서 foreign key(외래키) 지정시 오류가 난다면! foreign key 지정할때 오류가 나는 경우는 보통 두 테이블의 컬럼들의 속성이 다를경우이다. 가끔 보면 같은 int 형인대 하나는 unsigned 라서 안된다거나, 한쪽만 not null이 먹혀져있어서 그런 경우가 있다. 그럴때 보면 가차없이 mysql이 에러를 뱉어내는대. 아무리해도 차이가 없는대 오류가 나는 경우가있었다. 그누보드건 작업중 추가테이블과 그누보드 기존 테이블의 연결이었는대, 그누보드 테이블은 스토리지 엔진 이 모두 이미지처럼 MyISAM으로 되어있었고, 새로 추가한 테이블은 모두 InnoDB로 되어져 있었다. 생각도 못했는대, 알아본 결과 InnoDB만 Foreign key를 지원한다고한다.. 예전에는 MyISAM vs InnoDB의 구도로 많이들 이야기 나왔는대, 속시원하게 In..
당장 서버를 돌려보자(2) - 우분투에 계정생성, ftp 설치 앞에 작성된 글을 보고 순차적으로 진행한다면 아주 큰! 도움이 됩니다. - 당장 서버를 돌려보자(1) - 우분투에 APM(apache + php7 + mysql) 셋팅 이제 서버에 apm을 설치해서 php도 돌리고, mysql도 돌리는대 작업은 어떻게 할까? ftp가 열려있어야 파일을 올리고 셋팅을 할 수 있지 않을까? 그리고 root 계정으로 모든작업을 한다면.. 이계정이 털리면? 새 계정을 만들고 ftp를 설치하는 과정을 해보자! 1. 우분투 새로운 계정 만들기 root계정으로 ftp도 연결하고 작업 할 수 있지만, 만약에 이계정에 무슨 문제가 생기거나, 명령어를 잘못입력한다면..? 보통 관리자 계정이 있더라도 그계정을 이용해서 작업하진 않는다. 위험하다! 아주! 일단 계정을 추가한다. 여기서는 ub..
당장 서버를 돌려보자(1) - 우분투에 APM(apache + php7 + mysql) 셋팅 굳이 도커를 두고 가상서버를 세팅해야 한다는 케이스가 간혹 있어서 남겨둔다. 일단, 서버 패키지 최신화, 최신화된 정보 기준으로 설치된 패키지들을 업데이트 시켜준다. 여기서 사용된 버전은 ubuntu 16.04 LTS 버전이고, 모두 root 기준이다 1. 패키지 업데이트 서버에 있는 패키지 리스트 최신화 # apt-get update 최신화된 데이터를 이용하여 설치한 서비스들 업데이트 # apt-get upgrade 2. 아파치 설치 리눅스 웹서버에 사용되는 아파치 설치 (2017.1월 에 2.4.18버전이 설치되는듯함) # apt-get install apache2 3. DB설치 (MariaDB) DB는 mysql을 써도 되지만, 나는 작업을 MariaDB에서 했었었기 때문에, MariaDB 설치!(..
codeingiter 라이브러리 호출 여부 체크 예전에 만든 라이브러리중에 image upload 라이브러리가 있다. 거기서 아래와 같이 이미지 라이브러리를 호출하였다. $this->load->library('upload', $config_upload); 근대 문제는 앞서서 업로드가 처리되고, 뒤에 라이브러리가 호출되어 업로드가 처리되는경우 라이브러리가 두번 호출되어서 에러가 나거나, 기존 라이브러리가 호출되어 있기 때문에 upload 라이브러리에 config 값을 initialize를 이용해서 교체해주어야 하는데 그게 안되어 있어서 문제가 발생한다. 그러던중 function_exists가 생각나서 해당 함수를 쓰려고보니.. 함수는 인자값의 함수가 이미 선언되어 있는지 확인하는 함수이다. 내가 하던건 라이브러리의 호출이기 때문에 클래스의 선언 여부를 ..
javascript 함수인자 기본값 설정하기 / typeof응용하기 php를 하면서 codeigniter 를 사용하였는대, 여기선 함수에 인자가 안들어올때를 대비해서 기본 인자값을 지정 할 수 있었다. public function key_value($key = 'test'){ echo $key;}$this->key_value();이렇게 처리해두면 key_value에 인자를 전달해주지 않아도 $key는 자동으로 test란 값을 먹게되며, 출력되게 되는대 자바스크립트에서 생각보다 이부분이 필요한 경우가 많았다. 검색해서 찾아보니 ECMAScript 6에서는 php와 같은 방식으로 가능하다곤 하나, 아직 지원되지 않는 환경이 많기때문에, 아래와 같은 방법으로 처리할 수 있다고 한다. function key_value ($key) { $key = typeof $key !== '..
해쉬키(hash key), 해쉬값이 다른값이 나오거나, 맞지 않을경우 (카카오톡 API, 페이스북 API) 카카오톡 SDK 사용할때 (혹은 페이스북 등등..) developers 사이트에 해쉬키(Hash Key)를 등록해 주어야 하는데, 카카오톡 가이드에 따르면, keytool -exportcert -alias androiddebugkey -keystore -storepass android -keypass android | openssl sha1 -binary | openssl base64 로 해쉬값을 얻을 수 있다고 한다. 하지만 이 명렁어로 해쉬키를 얻어서 진행해보면 진행이 안된다고 나온다! 디버그를 해보면, 비교하는 키 값과, 해쉬 키값이 다르다는 것을 확인할 수 있다. 검색해 봤을때 여러 방법이 있었는데, 대부분의 방법도 같은 잘못된 해쉬 값을 출력 했다. (맥, 리눅스 에서는 정상적으로 된다는 이야기..