1. java 설치

예전에 분명 자바를 설치했던 기억이 있는데도 불구하고, 전혀 기억이 나질 않아 설치하는데 애를 먹었다.

설치과정을 써놓자.

자바 설치환경
: Kubuntu 10.04 (Linux 계열) 

자바 파일
: jdk-6u25-linux-x64.bin


2. jdk 설치

1. 다운로드 받은 jdk 파일을 /usr/local 로 옮긴다.

2. 설치한다.
# chmod 555 jdk-6u25-linux-x64.bin
# ./jdk-6u25-linux-x64.bin

3. 해당 위치에 jdk-1.6. ~ 라고 폴더가 생성되면, 간편한 이름으로 링크시켜주자.(폴더 바로가기 생성 )
# ln -s /usr/local/jdk-1.6.~ jdk


3. 환경변수 설정

# vi /etc/profile

(내용추가하기)
export JAVA_HOME=/usr/local/jdk
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar


(환경변수 적용)

# source /etc/profile
# env
# java -version
# javac -version

Posted by jsilva
나는 우분투 리눅스 유저로서 정말 많이 Linux APM(Apache, Php, MySQL) 세팅을 시도해 보았다, 수많은 블로그를 뒤적거렸고 정말 성공도 많이 했지만 깔끔하게 세팅이 되지 않아서 OS를 지웟다가 다시깔아야 되는 상황이 발생하는둥 엄청난 삽질을 했었다..

그러던 어느날 발견한 청천 벽력같은 코드 한줄....
ubuntu를 한번이라도 써본 사람이라면 apt-get install 명령어 정도는 뭔지 알것이다.

자.... 우분투에서 터미널을 켜보자 (메뉴바에 응용프로그램에 가면 우리에게 익숙한 검은 창에 커서가 깜박이는 그런 아이콘이 있을 것이다.)
이미 서버의 터미널에서 작업을 하고 있다면 그냥 다음의 명령어 한줄을 입력하고 암호만 입력해주면 된다!!!

   sudo apt-get install lamp-server ^  

이걸 알게되는 순간 나는 정말 OMG,.,,,,.,., 이런게 존재할 줄이야..

이에대한 자세한 설명을 참고하고 싶다면 아래 링크에서 확인할 수 있다.
http://tuxtweaks.com/2010/04/installing-lamp-on-ubuntu-10-04-lucid-lynx/

그토록 재잘재잘 명령어 써가며 하나하나 뭘 설치해야하나 확인을 했었는데 이런게 나오다니... 정확히 이 한줄로 APM setting이 끝난다..

이보다 간단할 수 있는가!? MAMP라는 강력한 APM Setting Application을 제공하는 Mac 보다도 간단하다.. 내가 이래서 우분투를 사랑하는것이다 ㅋㅋㅋ

위의 명령어를 사용할 수 없게 된다면 다음의 명령어들을 차례로 사용하면 된다.
sudo apt-get install apache2
sudo apt-get install mysql-server mysql-client
sudo apt-get install libapache2-mod-auth-mysql
sudo apt-get install php5-mysql
sudo apt-get install php5-cli
sudo apt-get install php5-common php5 libapache2-mod-php5
sudo a2enmod php5

이 명령어는 각각의 서비스를 재시작 해주는 코드이다.
sudo /etc/init.d/apache2 restart
sudo /etc/init.d/mysql restart

그리고 다음의 코드로 설치 버전 및 작동 여부를 확인할 수 있다.
sudo netstat -tap | grep mysql
apache2 -v
php -v
mysql -V

그러면 이 사용법을 알아보자.
먼저 이 명령어를 실행하게 되면 중간에 설치를 진행할것인지 말것인지를 물어보는 글이 뜬다 그러면  그냥 가볍게 ENTER를 쳐서 넘어가주자.

그리고 또 중간에 한번 화면이 멈추는데(자줏빛이었나 파란빛이었나.. 그런 배경화면이 나올것이다.) 그것은 아마도 Mysql root 계정의 암호를 설정하라는 내용일 것이다.

Mysql의 root Password 를 두차례에 걸쳐 입력하라고 할것이다 그럼 그냥 입력하고 엔터를 치고 진행을 시키면 된다.

이게 끝이다!! 정말 끝이다!! 모든 라이브러리의 설치와 설정을 마치고 우리의 우분투는 다시 일을 시켜달라고 깜빡이는 커서만 남겨둔채 우리가 어서 웹페이지를 만들어 주기만을 기다리고 있을 것이다.


-------------------------------------------------------------------------------
그럼 이제 APM 세팅이 제대로 되었는지 확인을 해보자.!!
다음의 명령어를 터미널에 차례로 입력한다.

cd /var/www
rm index,html
-> 기존의 html확장자를 가진 index page를 지우고 php확장자를 가진 index.php로 새 문서를 하나 만듭니다. 그리고 그 문서안을 이렇게 채워 줍니다.

This is my homepage
<? phpinfo() ?>

이렇게 해서 파일명을 "index.php"라고 하여 저장한 다음에 브라우저를 켜서 해당 웹서버 URL을 열어보면 현재 웹서버의 Php정보를 포함한 index.php페이지가 보일것이다.

그럼 이제부터는 index.php를 메인 페이지로 html, CSS, php를 이용한 자신만의 웹사이트를 만들면 되겠다!!
Posted by jsilva

자 이제 2번째 가이드다 . 앱이 등록이 되었다면 이제부터는 본격적인 코딩이다.
긴장들 하자 . 이 2번째 가이드에서도 준비물이있다.

※ 준비물 :
Html 에 대한 작은 지식, Javascript 에대한 기본 지식, PHP에 대한 작은 지식

필자가 이제부터 진행하려는 방향은 앱자체를 알려주지않는다.
그저 앱페이지의 Decoration 과 Development 를 위해 그 기초를 깔아주는 것에 지나지 않을뿐이니 그점 염두해 두도록 한다.


그럼 이제부터 Facebook App 에대한 기본지식을 간단히 알려주겠다.
1. 사용자 측면에서 앱의 설치는 SighUp(가입) -> Login(사용자 인증) -> Request of Permission(앱 허가-인증) -> Enjoy App(앱 사용)
2. 개발자 측면에서의 앱준비 과정은
   * 웹서버 세팅(간단한 앱일경우 Javascript 만 가지고도 생성이 가능하고 스케일이 있거나 보안이 요구되는 앱은 Php를 인식하는 서버세팅이 필요하다.) - 서버세팅에 관련한 포스팅은 추후에 올리겠습니다.
   * Index.php 혹은  index.html  페이지 코딩
   * 정상적인 App 설치 모듈 완성
그럼 이제부터 웹서버세팅에 대해 간단히 소개를 하고 본격적인 코딩에대해 알아보자
웹서버 세팅을 위해서는 크게 선택권이 2가지가 있다.
1. DB 사용을위한 Php 개발환경
2. 이미 제작 해놓은 온라인 플래시나 웹페이지의 표시를 위한 자바스크립트 코딩환경.

여기서 개발자가 2번을 선택하게 된다면 거의 모든 브라우저가 Javascript를 지원하기 때문에 딱히 별다른 서버세팅이 필요 없다고 할 수 있겠다. 그러나 1번을 선택하겠다면 APM세팅이 완료된 웹서버가 필요하다. 일단 필자가 이것까지 다 설명할 수는 없으니 좋은 참고자료의 링크를 남기겠다.

>>우분투 서버의 APM 세팅 가이드 : http://blog.naver.com/PostView.nhn?blogId=talmudic7&logNo=150092064617&redirect=Dlog&widgetTypeCall=true

그럼 이제부터 코딩을 시작해보자.
아 일단 index 파일을 만들어야 할곳은 서버(Linux기준)의 '/var/www'이 될 것이다.
그 예하에 만든 index 파일을 개발자가 등록한 App의 Canvas가 읽어오는 것이다. 그리고 자신의 IP(혹은 도메인)을 인터넷 주소창에 쳤을때 나오는 페이지는 index자체, Facebook Apps에서 준 도메인을 인터넷 주소란에 쳤을때 나오는 것은 이제 App페이지가 보이는것이다. 이것은 직접 해보면 바로 알 수 있다.

1. FB 자바스크립트 Loading
먼저 Facebook 의 기본 JavaSDK를 읽어오기 위해 로딩의 과정이 필요하다.
Java SDK를 로드해보자 html의 <body>에 이코드를 붙여넣는다.

<div id="fb-root"></div>
<script>
  window.fbAsyncInit = function() {
    FB.init({appId: '
당신의 App ID', status: true, cookie: true,
             xfbml: true});
  };
  (function() {
    var e = document.createElement('script'); e.async = true;
    e.src = document.location.protocol +
      '//connect.facebook.net/en_US/all.js';
    document.getElementById('fb-root').appendChild(e);
  }());
</script>

>> 그렇다면 이제 Facebook 에서 제공한 Javascript 기능들이 import 된 셈이다.

2. 그다음 Request of Permission (허가요청) 를 위한 부분을 집어넣자.
    역시 <script> 내부에 작성할것.

  window.fbAsyncInit = function() {
  FB.init({appId: '당신의 App ID', status: true, cookie: true, xfbml: true});

      /* All the events registered */
     FB.Event.subscribe('auth.login', function(response) {
         // do something with response
         login();
     });
     FB.Event.subscribe('auth.logout', function(response) {
         // do something with response
         logout();
     });
 
         // Login , Authorize , Permissions check
     FB.getLoginStatus(function(response) {
         if (response.session) {
             // 이미 내 앱을 설치한 user가 할 동작
            // location.href = "
http://apps.facebook.com/당신의AppURL/";
         }else{
           // 내앱을 설치하지 않은사람이 할 동작
           // Browser Entire Redirection to Request permission Page.
           top.location.href = "
https://www.facebook.com/dialog/oauth?client_id=당신의AppID&redirect_uri=당신의AppURL&scope=user_likes,publish_stream";
    }
     });
 };


소스코드의 하단부에 있는 top.location.href는 페이지 전체 리다이렉팅을 이야기 한다. 즉 그 코드가 실행될때 지정된 URL을 읽는다는 것이다.
Facebook은 다른 소셜 웹사이트와 비슷하게 Oauth Dialog시스템을 이용하기 때문에 저 URL을 필수적으로 작성해주어야 한다.

분홍색으로 표시된부분은 개발자 자신의 정보에 맞추어 바꾸어 줄것.
초록색 부분은 각종 허가받아야 할 범위에 대한 변수 입력 부분인데 이것은
http://developers.facebook.com/docs/authentication/permissions/
이곳에서 더 많은 정보를 볼수있다. 많은 정보에 대한 허락을 맡을수록 앱을 설치한 사용자에게 많은 행위와 데이터를 요청할 수 있다.




그럼 이제부터 PHP를 이용한 Facebook 앱 메인 페이지 코딩을 살펴보자.
Posted by jsilva

블로그 이미지
음악을 좋아하는 개발자입니다 ㅎㅎ 그냥 제 일상, 생각, 지식, 정보 등을 담은 위한 공간입니다 ^^
jsilva

공지사항

Yesterday
Today
Total

달력

 « |  » 2024.5
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 31

글 보관함

최근에 올라온 글

최근에 달린 댓글