Script output – How to deal with it

There is basically two way to use the output stream of the pChart library.

Rendering to the web browser

The most common way to use this library. Your script are processing real time or archived data and then generate a picture that is sent directly to the user browser. Server side, you‘ll call the stroke() function, client side, you‘ll invoke the script from an <IMG> HTML tag. The whole stuff would be like :
Server Side (mypic.php)

1./* Render the picture (choose the best way) */
2.$myPicture->stroke;

Client side (mypage.html)

1.<IMG SRC=‘mypic.php‘>

Calling the Stroke() method in your script will automatically send the ‘Content-type: image/png‘ header to the user web browser and the raw picture in the HTTP GET data field.

Rendering to a flat file

This option is often used by scheduled tasks and automatic script that are run on a regular interval and generate a picture that will be access like a standard file from the web server. Those pictures may also be used inside complex documents (PDF, bigger pictures). To render a picture to a file, just invoke the render(“myfile.png”) function.
Server Side (mypic.php)

1./* Render the picture (choose the best way) */
2.$myPicture->render("mypic.png");

Client side (mypage.html)

1.<IMG SRC=‘mypic.png‘>

..with this way, the user browser will NOT trigger the picture generation. the mypic.php should be called by another source.

Automatic method choosing

You may have noticed that the examples shipped with the pChart library can either be run from a web browser or the command line. This behavior is possible because of the autoOutput(“myfile.png”) method. If this method is called from a CLI session then the picture will be rendered to a file. If this method is called from any other type of session, the picture will be sent to the user browser.
Server Side (mypic.php)

1./* Render the picture (choose the best way) */
2.$myPicture->autoOutput("mypic.png");

Client side (mypage.html)

1.<IMG SRC=‘mypic.php‘>

..if mypic.php is called from the IMG tag, the picture will be sent to the browser. If it is called from a CLI interface, a file named mypic.png will be created.

인터넷 홈페이지를 두 개 이상 제작하여 운용하다보면 하나의 도메인뿐아니라 여러개의 도메인을 셋팅하여 하나의 홈페이지가 뜨도록해야할 필요성을 느낄때가 있습니다.

처음 가입시에는 하나의 도메인에 하나의 홈페이지를 운영하는 것이 가장 일반적이나 이용도중 필요에 의해서 다수개의 도메인을 가지게 될 때가 있으며 이때에 이들 도메인을 나름대로 활용할 방안을 찾게됩니다.

이런 필요에 의해서 나온 것이 멀티도메인이란 개념이며 이와 유사한 개념으로 서브도메인, 가상도메인등이 있습니다.

우선 이런 도메인에 관련된 용어부터 정의를 해보겠습니다. 

  • 기본도메인 : 처음에 신청했던 도메인으로 홈페이지를 운용하고 있는 도메인
  • 멀티도메인 : 기본도메인에 호스트이름만 다르게붙여서 사용하는 여러개의 도메인
  • 서브도메인 : 멀티도메인과 거의 같은 개념
  • 가상도메인 : 기본도메인외에 별도의 도메인으로 기본도메인과 같은 홈페이지에 연결된 도메인 

 

여기서 우리는 일반적으로 도메인이라하면 www.superuser.co.kr이라고 여기는 경우가 많은데 사실 엄격히 말씀드려서 호스트명과 도메인은 구분이 되어야합니다.

이의 이해를 돕기 위해서 다음의 FQDN(Fully Qualified Domain Name)이란 용어를 먼저 이해하시기 바랍니다. 

FQDN(Fully Qualified Domain Name)

FQDN이란 용어를 이해하기 전에 우리가 사용하는 도메인에 대한 분명한 이해가 필요할 것 같습니다. www.superuser.co.kr이란 웹사이트주소를 예로 들어보면 www는 호스트이름이며 
superuser.co.kr은 도메인을 의미하는 것입니다.

또한 bbs.superuser.co.kr에서도 bbs는 호스트이름을 의미하며 superuser.co.kr은 도메인을 의미하는 것입니다.

따라서 우리가 무심코 사용하는 도메인이라는 것은 엄격히 구분하여 ‘호스트이름+도메인’으로 이루어져 있습니다.  

FQDN이란 호스트이름과 도메인을 함께 표기한 것을 의미하는 것입니다.

위의 예에서 www와 bbs는 일종의 호스트이름이며superuser.co.kr은 도메인이며 www.superuser.co.kr과bbs.superuser.co.kr은 FQDN이 되는 것입니다.

image 

FQDN(Fully Qualified Domain Name)

FQDN이란 용어를 이해하기 전에 우리가 사용하는 도메인에 대한 분명한 이해가 필요할 것 같습니다.

www.superuser.co.kr이란 웹사이트주소를 예로 들어보면 www는 호스트이름이며 superuser.co.kr은 도메인을 의미하는 것입니다.

또한 bbs.superuser.co.kr에서도 bbs는 호스트이름을 의미하며 superuser.co.kr은 도메인을 의미하는 것입니다.

따라서 우리가 무심코 사용하는 도메인이라는 것은 엄격히 구분하여 ‘호스트이름+도메인’으로 이루어져 있습니다.

FQDN이란 호스트이름과 도메인을 함께 표기한 것을 의미하는 것입니다.

위의 예에서 www와 bbs는 일종의 호스트이름이며 superuser.co.kr은 도메인이며 www.superuser.co.kr과 bbs.superuser.co.kr은 FQDN이 되는 것입니다. 

처음 신청한 도메인(기본도메인)이 www.superuser.co.kr이라고 한다면 멀티도메인은 superuser.co.kr이라는 도메인에서 www라는 호스트이름만을 달리하여 만들어지는 도메인이 멀티도메인입니다.

예를 든다면 다음과 같은 도메인이 www.superuser.co.kr의 멀티도메인이 되는 것입니다.

image

등과 같이 개수에 제한없이 호스트이름만을 붙여서 원하는 멀티도메인을 얼마든지 사용가능합니다.

물론, KRNIC이나 INTERNIC에 새롭게 등록할 필요없이 그냥사용이 가능합니다.

단지 저희 웹호스팅에 원하는 멀티도메인을 사용하겠다고 셋팅을 요청만을 하면됩니다. 

그렇다면 가상도메인이란 무엇일까요? 

가상도메인이란 기본도메인과는 전혀다른 도메인으로 같은 홈페이지에 연결되어있는 도메인을 말합니다.

위의 예와 마찬가지로 기본으로 사용하고있던 도메인이 www.superuser.co.kr이고 이 도메인을 클릭했을 때 뜨는 홈페이지가 A라는 홈페이지라고 했을경우에는 다음과 가상도메인은 기본도메인(www.superuser.co.kr)과 같은 홈페이지(A)에 연결되어 있는 다음과 같은 도메인들을 말하는 것입니다. 

image

image

가상도메인은 멀티도메인과 달리 기본도메인과 전혀다른 도메인이기 때문에 사용하기 위해서는 KRNIC이나 INTERNIC에 등록을 해야합니다. 

이런 가상도메인과 멀티도메인을 고객께서 사용하기위해서는 저희에게 요청을 해야합니다.

고객께서 달리 셋팅해줘야하는 것은 없으며 저희가 웹서버나 도메인포워딩과 같은 것으로 셋팅을 해주면됩니다.

지금껏 설명한 멀티도메인, 가상도메인외에 서버도메인이란 개념을 사용하는 곳이 있습니다.

이는 멀티도메인과 거의 같은 개념이지만 다음과 같은 점이 강조된 것입니다. 

  • 기본도메인 : www.superuser.co.kr
  • 멀티도메인1 : bbs.superuser.co.kr
  • 멀티도메인2 : board.superuser.co.kr 
  • 서브도메인1 : friend.bbs.superuser.co.kr
  • 서브도메인2 : love.bbs.superuser.co.kr
  • 서브도메인3 : 20age.love.bbs.superuser.co.kr 

일반적인 도메인은 www.superuser.co.kr이나 www.kornet.net등과 같이 사용하는 것이 일반적이며 위의 서브도메인1, 2, 3과 같이 도메인앞에 여러개의 호스트이름을 붙여서 사용할 수 있습니다.

도메인명으로 사용할 수 있는 문자의 개수내에서 원하는 만큼의 호스트이름을 얼마든지 붙여서 사용할 수가 있습니다. 

즉, 서브도메인이란 멀티도메인과 같이 같은 도메인을 사용하면서 다른 호스트이름을 붙여서 사용한다는 것은 같으나 서브도메인은 위의 서브도메인1, 2, 3과 같이 2개이상의 호스트이름을 사용하는 점을 강조하는 것입니다. 

그리고, 도메인추가란 위의 여러 가지 경우를 통틀어서 일컫는 말입니다.

저희 웹호스팅에서는 도메인추가서비스에는 위에서 설명드린 멀티도메인, 가상도메인, 서브도메인등을 추가하는 경우를 일컫는 말입니다. 

참고로 도메인파킹(Domain Parking)이란 용어에 대해서 간단히 설명을 드리겠습니다. 

홈페이지를 만들지않고 네임서비스만 제공되는 도메인을 의미하는 것으로 한국인터넷정보센터(KRNIC)에서는 도메인을 등록한후에 3개월내에 반드시 등록한 도메인은 네임서비스를 받도록 하고 있습니다.

네임서비스란 해당도메인이 위치한 주소를 찾을 수있게 제공되는 서비스를 말합니다.

네임서비스를 받기위해서는 1차네임서버와 2차네임서버가 반드시 지정이되어야하는데 웹호스팅업체에서는 홈페이지를 만들지 않은 도메인에 대해서 네임서버등록을 할 수 있도록 하고 있는데 이서비스가 도메인파킹(Domain Parking)서비스입니다. 

이상으로 도메인에 대한 일반적인 용어의 개념들에 대해서 알아보았습니다.