KR20050044014A - Virtual uri(uniform resource identifier) based webapplication and web macro development method - Google Patents

Virtual uri(uniform resource identifier) based webapplication and web macro development method Download PDF

Info

Publication number
KR20050044014A
KR20050044014A KR1020030078518A KR20030078518A KR20050044014A KR 20050044014 A KR20050044014 A KR 20050044014A KR 1020030078518 A KR1020030078518 A KR 1020030078518A KR 20030078518 A KR20030078518 A KR 20030078518A KR 20050044014 A KR20050044014 A KR 20050044014A
Authority
KR
South Korea
Prior art keywords
web
uri
daemon
macro
present
Prior art date
Application number
KR1020030078518A
Other languages
Korean (ko)
Other versions
KR100603248B1 (en
Inventor
김영렬
Original Assignee
김영렬
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 김영렬 filed Critical 김영렬
Priority to KR1020030078518A priority Critical patent/KR100603248B1/en
Publication of KR20050044014A publication Critical patent/KR20050044014A/en
Application granted granted Critical
Publication of KR100603248B1 publication Critical patent/KR100603248B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/188Virtual file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 WWW(World Wide Web)서비스를 제공하는 웹데몬 및 웹어플리케이션의 가상 URI 해석 및 웹서비스 제공방법에 관한 것이다.The present invention relates to a virtual URI interpretation and a web service providing method of a web daemon and a web application providing a World Wide Web (WWW) service.

본 발명에서는 HTTP/1.0 HTTP/1.1을 지원하는 웹데몬을 실현하기 위하여 웹브라우저가 웹데몬에게 요청한 URI 의 해석절차에 새로운 개념을 정립하고 그 방법에 따라 웹서비스를 제공하도록 한다. 이로 인해, URI를 다루는 웹디자인 작업을 하는 웹디자이너들이 URI의 개념을 이해함으로써 보다 짧고 개념화된 URI를 입력하도록 하는 작업환경을 제공한다. 또한 본 발명으로 인해 특정 기능의 웹응용소프트웨어(웹어플리케이션이라고도 함)를 개발함에 있어 가상의 URI로 개념화하여 개발하게 함으로써 편리한 웹기반 소프트웨어의 개발환경을 제공한다. 또한 웹기반 소프트웨어의 특정 기능을 예약어로 처리하는 매크로 기법을 제공하여 디자인적으로 자유로운 작업환경을 제공한다.In the present invention, in order to realize a web daemon supporting HTTP / 1.0 HTTP / 1.1, a web browser establishes a new concept in a procedure of interpreting a URI requested to a web daemon and provides a web service according to the method. This provides a working environment that allows web designers who work with URIs to design URIs to enter a shorter and more conceptualized URI by understanding the concept of URIs. In addition, the present invention provides a convenient web-based software development environment by conceptualizing a virtual URI in developing a web application software (also called a web application) having a specific function. In addition, it provides a free design environment by providing macro techniques that process certain functions of web-based software as reserved words.

Description

가상 URI를 이용한 웹어플리케이션 구동 및 웹 매크로 서비스의 구현 방법 { Virtual URI(Uniform Resource Identifier) based Webapplication and Web Macro Development Method }Implementation of web application and implementation of web macro service using virtual URI {Virtual Uniform Resource Identifier (URI) based Web application and Web Macro Development Method}

본 발명은 WWW(World Wide Web)서비스를 제공하는 웹데몬 및 웹어플리케이션의 가상 URI 해석 및 웹서비스 제공방법에 관한 것으로 좀 더 상세하게 설명하면, 웹브라우저가 요청한 하이퍼텍스트전송프로토콜의 요청 헤더의 첫줄에 표시되는 URI에 대해 해석하여 웹서비스의 원본을 얻고 원본의 매크로부분을 해석하여 지정된 기능을 수행한 결과로 조합된 웹서비스정보를 제공하는 방법에 관한 것이다.The present invention relates to a method of interpreting a virtual URI and a web service providing method of a web daemon and a web application providing a World Wide Web service. In more detail, the first line of a request header of a hypertext transfer protocol requested by a web browser is described. The present invention relates to a method of obtaining the original web service by parsing the URI displayed on the web page, and providing the combined web service information as a result of performing the specified function by parsing the macro part of the original.

종래의 대표적인 웹데몬의 URI 해석과 웹서비스의 제공방법으로는 ① Html 문서디렉토리의 파일 제공방식, ② 시스템사용자의 Html 문서디렉토리의 파일을 제공하는 방식, ③ CGI스크립트 실행방식, ④ 외부 모듈지정에 의한 실행방식 등 이 있다.Representative methods of conventional web daemon URI analysis and web service provision include ① file providing method of Html document directory, ② method providing file of Html document directory of system user, ③ CGI script execution method, and ④ external module specification. By way of execution.

① Html 문서디렉토리의 파일제공방식은 HTML문서디렉토리로 지정된 위치로부터 URI의 상대경로를 연산하여 얻은 파일경로를 읽어 그 내용을 웹서비스로 제공하는 방식이다.① The file providing method of Html document directory is to read the file path obtained by calculating the relative path of URI from the location designated as HTML document directory and provide the contents to the web service.

예)URL: http://cobee.net/intro.htmlURL: http://cobee.net/intro.html

URI: /intro.html   URI: /intro.html

파일경로:/etc/httpd/html/intro.html   Filepath: /etc/httpd/html/intro.html

(DocumentRoot: /etc/httpd/html/ 일 때)          (When DocumentRoot: / etc / httpd / html /)

② 시스템 사용자의 Html 문서디렉토리의 파일을 제공하는 방식은 사용자공간을 표시하는 문자인 '~'와 사용자 계정(User ID)으로 지정된 URI를 해석하여 상대위치를 연산하고 파일경로를 읽어 그 내용을 웹서비스로 제공하는 방식이다.② The system user's Html document directory's file is provided by interpreting the URI specified by '~', which represents the user space, and the user ID (User ID). It is a way of providing it as a service.

예)URL: http://cobee.net/~summerb/friend.htmlE.g.) URL: http://cobee.net/~summerb/friend.html

URI: /~summerb/friend.html   URI: /~summerb/friend.html

파일경로:/home/summerb/html/friend.html   Filepath: /home/summerb/html/friend.html

(summerb의 홈이 /home/summerb/; User_Dir 이 "html/"일 때)            (when summerb's home is / home / summerb /; User_Dir is "html /")

③ CGI스크립트 실행방식은 CGI스크립트가 위치한 디렉토리의 상대적인 위치의 파일경로를 실행시켜 그 결과로 얻은 데이터를 기반으로 웹서비스 정보를 제공하는 방식으로서 요청된 URI의 시작이 cgi스크립트를 의미하는 문자열이 될 때 '?'로 구분되는 상대적인 파일경로를 CGI스크립트의 디렉토리로부터 연산하여 얻은 파일경로를 실행하여 결과를 얻는데 그 예는 다음과 같다.③ The CGI script execution method executes the file path of the relative location of the directory where the CGI script is located and provides the web service information based on the data obtained. The start of the requested URI becomes a string representing the cgi script. When the relative file path separated by '?' Is calculated from the directory of the CGI script, the file path obtained is executed. The following is an example.

예)URL: http://cobee.net/cgi-bin/www-board.cgi?uid=summerb&id=noteEx) URL: http://cobee.net/cgi-bin/www-board.cgi?uid=summerb&id=note

URI: /cgi-bin/www-board.cgi?uid=summerb&id=note&page=0URI: /cgi-bin/www-board.cgi?uid=summerb&id=note&page=0

파일경로:/etc/httpd/cgi-bin/www-board.cgi   File Path: /etc/httpd/cgi-bin/www-board.cgi

(cgi스크립트 디렉토리:/etc/httpd/cgi-bin)            (cgiscript directory: / etc / httpd / cgi-bin)

여기서 언급된 CGI는 웹어플리케이션의 대표적인 형태로서 다양한 파일경로를 가질 수 있으며 많은 개발자에 의해 동시다발적으로 개발되고 있다.CGI mentioned here is a representative form of web application and can have various file paths and is developed by many developers simultaneously.

또다른 예로서 "cgi"확장자를 갖는 URI에 ①,②의 방법과 같은 방법으로 구한 실존하는 파일경로를 실행하게 하는 것이 있으며 다음과 같다.As another example, a URI having an extension of "cgi" may be executed to execute an existing file path obtained in the same manner as in ① and ②.

예)URL: http://cobee.net/~summerb/note.cgi?num=0E.g.) URL: http://cobee.net/~summerb/note.cgi?num=0

URI: /~summerb/note.cgi?num=0   URI: /~summerb/note.cgi?num=0

파일경로:/home/summerb/html/note.cgi   Filepath: /home/summerb/html/note.cgi

③ 외부모듈지정에 의한 실행방식은 URI의 파일경로가 'php3', 'phtml', 'php' , 'jsp' 등의 문자열이 검색될 경우 지정된 외부실행모듈(공유라이브러리)을 실행시켜 그 결과를 웹정보시스템으로 구성하는 방법이다. 이러한 방법은 외부실행모듈에 프로그래밍이 가능한 스크립트의 해석기가 내장되어 있는 경우로써 해당 파일을 읽었을 때 파일의 내용을 외부실행모듈이 해석하게 하는 방법이다.③ Execution method by designating external module executes the specified external execution module (shared library) when the file path of URI is searched for 'php3', 'phtml', 'php', 'jsp', etc. It is a method of organizing with a web information system. This method is a case where a program interpreter for a script is embedded in an external execution module. When the file is read, the external execution module interprets the contents of the file.

예)URL: http://cobee.net/www-board/board.php?id=summerb&page=0E.g.) URL: http://cobee.net/www-board/board.php?id=summerb&page=0

URI: /www-board/board.php?id=summerb&page=0URI: /www-board/board.php?id=summerb&page=0

파일경로:/etc/httpd/html/www-board/board.php   Filepath: /etc/httpd/html/www-board/board.php

실행모듈:modules/libphp4.so   Executable module: modules / libphp4.so

이 경우에는 실행모듈은 스크립트 해석기 등의 기능을 내장하고 있으며 실제로 존재하는 파일경로의 내용에 포함되어 있는 스크립트를 해석하도록 요청하는 방식으로 실제 파일이 존재하지 않으면 스크립트가 동작되지 아니한다. 확장자에 따른 실행 모듈은 웹데몬의 환경설정 파일에 지정하도록 되어있다.In this case, the execution module has built-in functions such as a script interpreter and requests to interpret the script included in the contents of the existing file path. If the actual file does not exist, the script does not operate. Execution modules by extension are specified in the web daemon's configuration file.

상기에서 전술한 종래 기술에 따른 URI 해석및 웹서비스의 제공방법은 공통적으로 HTTP 프로토콜에 의거하여 HTML 문서 혹은 2진 데이터를 웹브라우저에 보내며 하나의 서버로 여러개의 도메인 주소의 웹서비스를 제공하는 웹호스팅에도 적용된다. 그러나 이러한 방법은 최근 많은 웹어플리케이션에 의해 구현되는 단체 사용자에 대한 URI 개념을 갖고 있지 않으며, 특정기능의 웹어플리케이션에 대한 구분된 확장자를 지정하고 URI 자체를 매개변수로 하여 실행하도록 하는 방식을 제공하지 않으며, HTML원문을 해석하여 특정 웹어플리케이션 혹은 웹을 구성하여 주는 내부 실행함수를 호출하여 얻은 결과로 다시 웹문서를 재구성하는 매크로 기능이 없다. 또한 한 기의 서버에서 개인사용자의 웹서비스를 제공할 때 실제 시스템 사용자 ID를 활용하게 되어 버추얼 호스팅 기능을 제공함에 있어 다른 도메인이라도 한 기의 서버에 존재하는 동일한 ID의 사용자라면 구분하여 개인사용자의 웹서비스를 제공하지 못한다.In the above-described method of providing a URI interpretation and a web service according to the related art, a web that sends an HTML document or binary data to a web browser based on the HTTP protocol and provides a web service of multiple domain addresses to a single server in common. This also applies to hosting. However, these methods do not have the concept of URIs for corporate users, which are implemented by many web applications in recent years, and do not provide a way to specify a distinct extension for a web application of a particular function and execute it with the URI itself as a parameter. Also, there is no macro function to reconstruct the web document with the result obtained by calling the internal execution function that composes a specific web application or web by interpreting the HTML text. In addition, when providing a web service of an individual user in one server, the actual system user ID is used to provide a virtual hosting function. It does not provide web services.

상기한 종래 기술의 문제점을 해결하기 위한 본 발명의 목적은 웹데몬 및 웹어플리케이션의 제작단계에서 실제 존재하지 않는 가상 파일경로를 요청하는 가상 URI에 대하여 가상파일의 확장자와 이에 대응하는 웹어플리케이션 혹은 내부 실행함수(function)를 웹데몬의 환경파일에서 지정하게 함으로써, 웹브라우저가 웹데몬에게 요청한 URI에서 확장자를 검색하고 대응 웹어플리케이션 혹은 내부 실행함수를 실행한 결과를 얻도록 하고, '@'와 단체사용자의 ID를 조합하여 단체사용자 웹서비스 개념을 추가적으로 정립하며, '~'와 사용자 계정을 조합하는 개인사용자 웹서비스 개념을 시스템 사용자 ID가 아닌 도메인에 따른 가상 ID로의 개념을 정립하며, 파일을 읽거나 실행한 결과가 텍스트문서일 경우 매크로 문자열을 검색하여 이를 다시 지정된 웹어플리케이션 혹은 내부의 실행함수를 호출하여 그 결과로서 웹문서를 재구성하는 개념의 매크로 서비스 방법을 제공하기 위한 것이다.   An object of the present invention for solving the above problems of the prior art is to extend the virtual file for the virtual URI requesting a virtual file path that does not actually exist in the production process of the web daemon and the web application, and the corresponding web application or internal By specifying an execution function in the web daemon's configuration file, the web browser retrieves the extension from the URI requested by the web daemon and gets the result of executing the corresponding web application or internal execution function. The concept of group user web service is additionally established by combining user IDs, and the concept of individual user web service concept that combines '~' and user account is established as the virtual ID according to the domain, not the system user ID. , Or if the result is a text document, the macro string is retrieved and reassigned to the specified web application. By calling the revocation or the internal running of a macro function to provide the service concept of how to reconstruct the web page as a result.

상기한 목적을 달성하기 위한 본 발명은 웹서버에서 작동하는 웹데몬 및 웹어플리케이션에 있어서 실행단계에서 환경파일을 읽어 초기화하는 기능과, 웹브라우저가 요청한 HTTP 헤더로부터 URI를 추출하고 URI를 해석하는 기능, 해석된 URI로부터 단체 사용자의 웹서비스로 연산하여 실제 파일경로를 구하는 기능, 해석된 URI로부터 확장자를 검색하여 지정된 웹어플리케이션 혹은 내부 함수를 실행하는 기능, 해석된 URI로부터 개인 사용자의 웹서비스를 가상의 ID를 이용하여 실제 파일경로를 구하는 기능, 구해진 파일경로를 읽거나 혹은 지정된 웹어플리케이션 및 내부함수의 실행결과가 텍스트 문서일 경우 매크로 문자열을 검색하고 매크로 기능을 실행하여 웹문서를 재구성하는 기능을 포함한다.The present invention for achieving the above object is a function to read and initialize the environment file in the execution step in the web daemon and web applications that operate on the web server, and to extract the URI from the HTTP header requested by the web browser and interpret the URI Function to obtain the actual file path by operating as a web service of a group user from the parsed URI, retrieve the extension from the parsed URI, and execute the specified web application or internal function, and simulate the individual user's web service from the parsed URI The function to obtain the actual file path by using the ID of ID, to read the obtained file path, or to search the macro string and reconstruct the web document by executing the macro function when the execution result of the specified web application and internal function is a text document. Include.

또한 가상의 URI로 부터 확장자에 따른 웹어플리케이션의 실행하여 실행결과를 버퍼에 기록하는 기능, 매크로로 지정된 웹어플리케이션을 실행하여 실행결과를 버퍼에 기록하는 기능, 일정한 키워드에 의하여 프로그램 내부의 함수를 호출하는 기능과 각각의 함수의 실행부분이 될수 있는 라이브러리 기능을 포함한다.Also, it is possible to execute the web application according to the extension from the virtual URI and write the execution result to the buffer, to execute the web application designated by the macro and to write the execution result to the buffer, and to call a function inside the program by a certain keyword. And library functions that can be part of the execution of each function.

이와 같은 구성을 특징으로 하는 웹데몬 및 웹어플리케이션의 동작 과정에 대해 알아보면 다음과 같다. 동작 과정 설명 시 웹데몬이 헤더로부터 URI를 획득하고 URI의 확장자 혹은 구별자를 검색하고 웹서비스를 구현하고 웹매크로를 실행하는 방법, 즉 본 발명의 일 실시예에 따른 웹데몬 웹어플리케이션의 구현 방법을 위주로 설명하기로 한다.The operation process of the web daemon and the web application having such a configuration is as follows. In the description of the operation process, a web daemon obtains a URI from a header, retrieves an extension or identifier of a URI, implements a web service, and executes a web macro, that is, a method of implementing a web daemon web application according to an embodiment of the present invention. The explanation mainly focuses on this.

우선 웹데몬 혹은 웹어플리케이션이 실행되면 웹데몬으로서의 준비작업(101)을 시행한다 준비작업의 주된 내용은 지정된 환경파일을 읽어 실행환경을 초기화하고 웹서비스를 제공하는 포트를 개설하는 것이다. 웹데몬은 개설된 포트로 접근하는 클라이언트의 대기모드(102)에서 웹브라우저(110)가 접속을 요구하면 곧바로 접속을 허용하여 신규 소켓을 개설하고(103), 자신의 프로세스를 분기(104)하게 된다. 부모 프로세스는 웹브라우저와 연결된 소켓을 닫고 다시 클라이언트 대기모드(102)로 전환되며 자식 프로세스는 웹브라우저와의 소켓을 유지한채 웹서비스를 계속 진행한다.우선, 연결된 소켓으로부터 웹브라우저의 HTTP 요청 프로토콜(111)을 접수하며 URI를 획득하고 분석한다(106). 자식 프로세스는 URI를 분석한 후 여러 가지 단계을 거쳐 원시 자료를 획득(107)하고 원시자료로부터 매크로 문자열을 검색하여 자료를 재구성(108)하여 최종적인 HTTP 프로토콜에 준하는 정보자료(109)를 구성하고 웹브라우저(110)에 전송하고 종료한다.First, when the web daemon or web application is executed, the preparatory work 101 as the web daemon is executed. The main contents of the preparatory work are to read a designated environment file, initialize the execution environment, and open a port for providing a web service. In the standby mode 102 of the client accessing the opened port, the web daemon permits the connection as soon as the web browser 110 requests a connection, opens a new socket (103), and branches (104) its process. do. The parent process closes the socket associated with the web browser and goes back to client standby 102, and the child process continues the web service while maintaining the socket with the web browser. First, the HTTP request protocol of the web browser from the connected socket ( 111) and obtain and resolve the URI (106). After analyzing the URI, the child process takes several steps to obtain the raw data (107), retrieves the macro string from the raw data, and reconstructs the data (108) to construct the information material (109) that conforms to the final HTTP protocol. Send to browser 110 and exit.

여기에서 상기 환경파일을 읽는 단계에 대해서 표 1을 통해 알아보면 다음과 같다. 표 1에서 VIRTUAL_EXTD_EXEC "brd board" "/cgi-bin/www-board/board.cgi" 은 URI의 확장자가 "brd", 혹은 "board"일 때 "cgi-bin/www-board/board.cgi"를 대응 웹어플리케이션으로 지정하라는 의미의 한 예이다. VIRTUAL_EXTD_FUNC "mail" "_mail_func()" 은 URI의 확장자가 "mail"일 때 웹데몬 내부의 "_mail_func"함수를 대응 함수로 지정하라는 의미의 한 예이다. 또한 MACRO_EXEC "#!@#BOARD;" "/cgi-bin/www-board/b-macro.cgi"는 원시문서에서 "#!@#BOARD"문자열이 만나면 ";"문자가 나올 때까지의 내용을 변수로 하여 지정된 웹어플리케이션을 실행시킨 결과로 치환하라고 하는 의미의 예이다. 이와같은 문자파일로 기록된 환경변수는 사람의 손이나 자동화 프로그램으로 편집될 수 있다는 장점이 있다. 또한 추가적으로 가상의 확장자와 웹어플리케이션 혹은 내부 함수를 대응하여 지정할 수 있으므로써 확장적으로 사용될 수 있다는 장점이 있다.Herein, the steps for reading the environment file are as follows. In Table 1, VIRTUAL_EXTD_EXEC "brd board""/cgi-bin/www-board/board.cgi" is "cgi-bin / www-board / board.cgi" when the URI extension is "brd" or "board". Is an example of the meaning of specifying to be the corresponding web application. VIRTUAL_EXTD_FUNC "mail""_mail_func()" is an example of specifying that the "_mail_func" function in the web daemon as a corresponding function when the URI extension is "mail". Also, MACRO_EXEC "#! @ # BOARD;""/cgi-bin/www-board/b-macro.cgi" executes the specified web application with the contents up to the ";" character when the "#! @ # BOARD" string is encountered in the source document. It is an example of the meaning to substitute by a result. Environment variables recorded as text files have the advantage that they can be edited by human hands or by automation programs. In addition, virtual extension and web application or internal function can be specified correspondingly, so it can be used extensively.

표 1Table 1

======================================================================================================================== ====================

VIRTUAL_EXTD_EXEC "brd board" "/cgi-bin/www-board/board.cgi" VIRTUAL_EXTD_EXEC "brd board" "/cgi-bin/www-board/board.cgi"

VIRTUAL_EXTD_EXEC "img image" "/cgi-bin/photo-album/photo.cgi" VIRTUAL_EXTD_EXEC "img image" "/cgi-bin/photo-album/photo.cgi"

VIRTUAL_EXTD_FUNC "chat" "_chat_func()" VIRTUAL_EXTD_FUNC "chat" "_chat_func ()"

VIRTUAL_EXTD_FUNC "mail" "_mail_func()" VIRTUAL_EXTD_FUNC "mail" "_mail_func ()"

MACRO_EXEC "#!@#BOARD;" "/cgi-bin/www-board/b-macro.cgi" MACRO_EXEC "#! @ # BOARD;" "/cgi-bin/www-board/b-macro.cgi"

MACRO_FUNC "#!@#U;" "_print_userinfo()" MACRO_FUNC "#! @ # U;" "_print_userinfo ()"

DocumentRoot "/home/web/html/" DocumentRoot "/ home / web / html /"

GroupHome "/home/web/group/" GroupHome "/ home / web / group /"

UserHome "/home/web/home/" UserHome "/ home / web / home /"

Group_Dir "html/" Group_Dir "html /"

User_Dir "html/" User_Dir "html /"

.... ....

======================================================================================================================== ====================

표 1과 같이 지정된 환경변수를 초기화하는 기능(101)의 예를 도 2를 들어 설명하고자 한다. 프로그램이 시작되면 환경 파일 경로를 오픈(200)한 후 파일의 끝(207)까지 한줄 씩 읽는다(201). 읽힌 줄은 가상확장자에 대한 웹어플리케이션 혹은 내부함수 지정인지 검사(202)하여 그럴 경우 가상확장자에 대응하는 웹어플리케이션 혹은 내부함수를 누적하여 지정한다(205). 그렇지 않은 경우 매크로선언부인지 검사(203)하여 그럴 경우 매크로 정의 워드와 대응하는 웹어플리케이션이나 내부 호출함수를 누적하여 지정한다.An example of a function 101 for initializing a designated environment variable as shown in Table 1 will be described with reference to FIG. 2. When the program starts, the environment file path is opened (200) and then line by line until the end of the file (207) (201). The read line checks whether the web application or the internal function designation for the virtual extension (202), and if so accumulates and specifies the web application or internal function corresponding to the virtual extension (205). If not, it checks whether it is a macro declaration unit (203), and if so, accumulates and specifies a web application or an internal call function corresponding to the macro definition word.

이와 같이 본 발명은 작은 목적에서 웹데몬 및 웹어플리케이션을 제작할 때는 환경파일 없이 직접 프로그램의 내부에 초기화하여 응용될 수도 있으며 별도의 환경파일을 이용하므로써 확장적으로 응용될 수 있다.As described above, the present invention may be applied by initializing the program directly without the environment file when the web daemon and the web application are manufactured for a small purpose, and may be extended by using a separate environment file.

도 1에서 HTTP 요청자료를 수신하여 URI를 획득하고 분석하는(106) 단계와 원시자료를 획득하는(107) 단계에 대하여 도 3를 참조하면서 자세히 설명하고자 한다. 획득된 URI(301)는 CGI스크립트와 모듈을 검색(302)한다. 이 단계에서는 다른 웹데몬과 유사한 처리방식을 거치게 되므로 본발명에서는 설명하지 않는다. 통과한 URI는 확장자검색(303)을 거치게 되는데 환경에서 웹어프리케이션 혹은 내부 실행기능으로 지정된 확장자가 검색되면 대응실행(308) 단계를 거쳐 원시데이터를 얻게 된다. 통과한 URI는 '@'문자로 단체사용자 영역임이 확인(304)되면 단체 사용자에 할당된 공간(디렉토리)로부터 실제 파일경로를 연산하여 파일경로를 읽음(309)으로써 원시 데이터를 구한다. 통과한 URI는 '~'문자로 개인 사용자 영역임이 확인(305)되면 가상의 ID에 할당된 공간(디렉토리)으로부터 실제 파일경로를 연산하고 그 파일을 읽음(310)으로써 원시자료를 획득한다. 통과한 URI는 DocumentRoot 공간에서 실제 파일경로를 연산하고 파일을 읽음(306)으로써 원시자료를 획득하지만 이 단계는 타 웹데몬에서 시행하고 있으므로 본 발명에서는 논외로 한다. The step of obtaining and analyzing the URI (106) and obtaining the raw data (107) by receiving the HTTP request data in FIG. 1 will be described in detail with reference to FIG. The obtained URI 301 retrieves 302 the CGI script and the module. This step is similar to other web daemons, so it will not be explained in the present invention. The passed URI goes through the extension search 303. When the extension designated by the web application or the internal execution function is searched in the environment, raw data is obtained through the corresponding execution 308 step. When it is confirmed that the passed URI is a group user area with the '@' character (304), the raw file is obtained by calculating the actual file path from the space (directory) allocated to the group user (309) to obtain raw data. When it is confirmed that the passed URI is a private user area with '~' character (305), the raw data is obtained by calculating the actual file path from the space (directory) allocated to the virtual ID and reading the file (310). The passed URI obtains the raw data by calculating the actual file path in the DocumentRoot space and reading the file (306), but this step is not discussed in the present invention because it is implemented by other web daemons.

여기서 '~'문자에 의해 표시되는 개인 사용자의 웹서비스 영역은 시스템 사용자의 ID로 간주하여 해석하지 않고 가상의 사용자 ID로 인식한다. 별도의 POSIX 표준의 passwd 파일에서 각 가상홈디렉토리를 지정하거나 지정된 하나의 디렉토리 안에 UID와 같은 하위디렉토리를 가상의 홈디렉토리로 할당하는 단계를 포함한다.Here, the web service area of the individual user indicated by the '~' character is regarded as the virtual user ID without being interpreted as the system user ID. Specifying each virtual home directory in a separate POSIX standard passwd file or assigning a subdirectory such as a UID as a virtual home directory in a designated directory.

도 3에서 URI의 '@'를 검사(304)하여 단체 사용자 공간의 파일경로를 읽는(309) 단계에 대해서는 도 4에서 좀 더 자세히 설명하고자 한다. 도 4는 단체 사용자의 URI 예를 들어 설명하고 있는데 표 1에서 제시된 환경설정에 맞춰 실제 파일경로가 연산된다. 단체 사용자 URI(401)는 '@'문자, 단체사용자를 식별하는 GID, 이외의 상대 경로 등으로 구성된다. 여기에서 GID를 얻는 단계(402)을 거치면 환경설정에서 제시한 단체 사용자의 홈과 GID, Group_Dir에 설정된 값을 이용하여 단체 웹서비스 공간을 표시하는 실제 디렉토리(403)을 구한다. 이로부터 파일의 상대적인 경로를 연산(404)하여 구하면 파일을 열어 버퍼로 읽어들인다(405).The step of checking 304 '@' of the URI in FIG. 3 and reading the file path of the group user space (309) will be described in more detail with reference to FIG. 4. 4 illustrates an example of a group user's URI. The actual file path is calculated according to the configuration shown in Table 1. The group user URI 401 is composed of a '@' character, a GID identifying the group user, a relative path other than this. In step 402 of obtaining a GID, an actual directory 403 representing a group web service space is obtained by using the group user's home, GID, and Group_Dir values set in the configuration. When the relative path of the file is calculated (404), the file is opened and read into the buffer (405).

도 3에서 URI의 확장자를 검색(303)하여 대응하는 웹어플리케이션 혹은 내부함수를 수행하여 원시자료를 얻는 단계(308)에 대해서는 도 5를 이용하여 좀 더 상세히 설명하고자 한다. URI의 사용 예로써 "/notice.brd"를 제시하며 설명을 진행하도록 한다. 프로그램은 환경설정에서 정의된 확장자인지 검사하기 위하여 우선 URI로부터 확장자를 획득하는 단계(502)를 거친다. 획득한 확장자가 표 1에서 지정하여 얻은 환경설정부분이나 혹은 프로그램 자체에 초기화되어 있는 지정관계가 있다면(503) 프로세스를 분기(504)하여 대응하는 웹어플리케이션 혹은 내부 함수를 실행(505)시키고 그 결과로서 원시자료를 받는다. 대응하는 웹어플리케이션이나 내부 실행함수가 표준 함수를 이용할 수 있도록 pipe(), dup2() 등을 이용하여 표준 입출력에 준하도록 설정한다.여기서 가상 URI인 "/notice.brd" 는 연산을 통해서 파일시스템에 실제 존재함을 확인할 수 없는 경우이며 표 1에서 지정된 "/cgi-bin/web-board/board.cgi"가 그 실행 파일 경로가 되고 "notice"는 실행에 필요한 환경변수로서 전달한다. 외부의 실행프로그램을 exec에 의해 실행시킬 때는 환경변수의 목록에 지정워드와 환경변수 데이터를 입력하여 전달하고, 외부의 실행프로그램은 "getenv()"등의 표준함수를 이용하여 지정워드에 대한 환경변수 데이터를 획득한다. CGI 스크립트에서는 "notice"문자열을 이용하여 구분된 웹게시판 서비스를 제공한다.In FIG. 3, a step 308 of retrieving an extension of a URI and obtaining a raw material by performing a corresponding web application or an internal function will be described in more detail with reference to FIG. 5. As an example of using a URI, "/notice.brd" is presented to explain. The program first goes through a step 502 of obtaining an extension from the URI to check if it is an extension defined in the configuration. If the obtained extension has the designated configuration part obtained from Table 1 or the designated relationship initialized in the program itself (503), the process branches (504) to execute the corresponding web application or internal function (505). Receive raw data as Use pipe (), dup2 (), etc. to set up standard input / output so that the corresponding web application or internal execution function can use the standard functions, where the virtual URI "/notice.brd" is a file system. If it is not possible to verify that it actually exists in the table, "/cgi-bin/web-board/board.cgi" specified in Table 1 will be the executable file path, and "notice" will be passed as an environment variable for execution. When executing an external executable program by exec, input the designated word and environment variable data in the environment variable list and deliver it. The external executable program uses the standard function such as "getenv ()" to set the environment for the specified word. Acquire variable data. CGI scripts provide a separate bulletin board service using the "notice" string.

이상과 같이 도 1의 HTTP자료를 수신하고 URI를 획득하여 분석하는 단계(106)에서 원시자료를 획득하는 단계(107)에 대하여 설명하였다. 원시자료를 획득하는 단계에서 각 웹어플리케이션을 제작하는 단계와 내부 실행함수를 개발하는 단계는 다른 웹데몬과 큰 차이를 보이지 않으므로 본 발명에서 설명하지 않는다. As described above, the step 107 of obtaining raw data in the step 106 of receiving the HTTP data of FIG. 1 and obtaining and analyzing the URI has been described. In the step of acquiring the raw data, the step of producing each web application and the step of developing an internal execution function are not described in the present invention because they do not show much difference from other web daemons.

도 6은 도 1에서 매크로 기능을 이용하여 원시자료를 새로운 자료로 재구성하는 단계(108)를 좀 더 자세히 설명하기 위한 것이다. 프로그램은 원시자료에 대하여 충분한 작업공간(메모리)를 할당 받고 초기화하는 단계(602)를 거친후 반복하며 앞서 표 1에서 예시로서 지정되고 도 2의 예시로서 초기화된 자료에 대해 검색한다. 선언된 매크로문자열이 검색되면 대응하는 실행함수 혹은 웹어플리케이션을 실행하는 단계(604)를 거쳐 작업공간에 그 결과를 저장(605)한 후 다시 문자열의 검색및 실행단계를 문서의 끝(606)이거나 매크로 문자열이 검색되지 않을 때까지 계속 반복한다. 매크로 실행과정을 종료하면 작업공간에 기록된 문서를 조립하는 과정(607)을 거쳐 그 결과로서 웹서비스의 원문(608)을 얻는다. 매크로 문자열 반복횟수가 많고 상대적으로 작업공간이 부족하다면 일부 자료를 우선적으로 웹정보로 가공하여 보내는 버퍼링 단계를 삽입할 수 있다. 도 6 의 전 과정을 통해 얻어진 웹서비스 원문(608)은 웹데몬의 응답에 필요한 HTTP 헤더 다음으로 웹브라우저에 전송하게 된다. 웹데몬의 HTTP 헤더의 작성법이나 웹서비스 원문의 전송은 HTTP/1.0, HTTP/1.1을 따르게 하는데 이 단계는 일반적인 웹데몬에서 시행하는 것으로 본 발명에서는 설명하지 아니한다.FIG. 6 illustrates in more detail the step 108 of reconstructing raw data into new data using the macro function of FIG. 1. The program repeats after allocating and initializing a sufficient workspace (memory) for the raw data (step 602) and searches for data initialized as an example in Table 1 and initialized as the example in FIG. When the declared macro string is found, the corresponding execution function or web application is executed (step 604), the result is stored in the workspace (605), and the search and execution of the string is performed at the end of the document (606). Keep repeating until the macro string is not found. When the macro execution process ends, the process of assembling the document recorded in the workspace (607) is obtained as a result of the original text 608 of the web service. If you have a large number of macro string iterations and a relatively lack of workspace, you can insert a buffering step that processes some data into web information first. The web service text 608 obtained through the entire process of FIG. 6 is transmitted to the web browser after the HTTP header required for the response of the web daemon. How to write the HTTP header of the web daemon or the transmission of the original web service text conforms to HTTP / 1.0 and HTTP / 1.1. This step is performed by a general web daemon and will not be described in the present invention.

표 1에서 예시로서 정의된 매크로 선언문은 다음과 같이 표 2에 표시된 원시자료를 표 3에 표시한 웹정보로 재구성하는 역할을 수행한다. The macro declaration defined as an example in Table 1 serves to reconstruct the raw data shown in Table 2 into the web information shown in Table 3 as follows.

표 2 TABLE 2

======================================================================================================================== ====================

<Html><Html>

<title>게시판 보기 테스트</title><title> Test board view </ title>

<body bgcolor=ffffff><body bgcolor = ffffff>

Notice 게시판 내용보기<br>Notice View Bulletin Board Contents <br>

#!@#BOARD,notice;#! @ # BOARD, notice;

<hr></body></html><hr> </ body> </ html>

======================================================================================================================== ====================

표 3TABLE 3

======================================================================================================================== ====================

<Html><Html>

<title>게시판 보기 테스트</title><title> Test board view </ title>

<body bgcolor=ffffff><body bgcolor = ffffff>

Notice 게시판 내용보기<br>Notice View Bulletin Board Contents <br>

<table width=600 border=1 cellspace=0 cellpadding=2><table width = 600 border = 1 cellspace = 0 cellpadding = 2>

<tr><td>번호</td><td>제목</td><td>글쓴이</td><td>날짜</td></tr> <tr> <td> Number </ td> <td> Title </ td> <td> Writer </ td> <td> Date </ td> </ tr>

<tr><td>05</td><td><a href=/notice.brd?num=5>5번째 글입니다.</a></td> <tr> <td> 05 </ td> <td> <a href=/notice.brd?num=5> 5th post </a> </ td>

<td>한여름</td><td>2003/10/12</td></tr>    <td> Midsummer </ td> <td> 2003/10/12 </ td> </ tr>

<tr><td>04</td><td><a href=/notice.brd?num=4>네번째 글입니다.</a></td> <tr> <td> 04 </ td> <td> <a href=/notice.brd?num=4> 4th article </a> </ td>

<td>바람돌이</td><td>2003/10/11</td></tr>    <td> Wind </ td> <td> 2003/10/11 </ td> </ tr>

<tr><td>03</td><td><a href=/notice.brd?num=3>세번재일까요?</a></td> <tr> <td> 03 </ td> <td> <a href=/notice.brd?num=3> Is it the third time? </a> </ td>

<td>돌돌돌</td><td>2003/10/10</td></tr>    <td> Stones </ td> <td> 2003/10/10 </ td> </ tr>

</table></ table>

<hr></body></html><hr> </ body> </ html>

========================================================================================================================= =====================

이상의 표 2와 표 3에서 보는 바와 같이 "#!@#BOARD,notice;"문자열은 표 1에서 지정된 매크로 선언부에 의하여 "cgi-bin/www-board/b-macro.cgi"를 실행시켜 얻은 자료(표 3 의 굵은 글씨부분)로 치환된다.As shown in Table 2 and Table 3 above, the string "#! @ # BOARD, notice;" is obtained by executing "cgi-bin / www-board / b-macro.cgi" by the macro declaration specified in Table 1. Replaced with data (bold letters in Table 3).

본 발명의 일 실시예에서 표 1과 같은 환경설정에서의 MACRO_FUNC 에 의해 지정되는 내부함수 "_print_userinfo()", "VIRTUAL_EXTD_FUNC"에 의해 지정되는 내부함수 "_chat_func()", "_mail_func()" 등은 프로그램의 내부에 내부함수의 문자열을 검색하여 특정된 함수를 찾아 실행시키는 라이브러리를 작성한다. 이로서 내부함수의 지정사용은 사전에 프로그램에 첨가하여 만들어진 준비된 내부함수만이 사용될 수 있음을 알 수 있다. 내부함수의 실행부분은 포인터함수 및 문자열을 구조체로 하는 배열을 이용하여 검색할 수 있으며 혹은 문자열을 순차적으로 비교하는 비교문구의 나열로서 검색할 수 있다. 검색방법에 있어서는 처리 속도나 실행 바이너리의 크기가 달라질 수 있으나 그 호출 결과에서는 차이가 없다.In an embodiment of the present invention, the internal functions "_print_userinfo ()", "VIRTUAL_EXTD_FUNC" specified by MACRO_FUNC in the configuration as shown in Table 1, "_chat_func ()", "_mail_func ()", etc. Write a library that searches a string of internal functions inside a program to find and execute a specific function. It can be seen that the designated use of internal functions can only use prepared internal functions that have been added to the program beforehand. The execution part of an internal function can be searched using an array of pointer functions and strings, or as a sequence of comparison statements that compare strings sequentially. In terms of search method, processing speed and size of execution binary may be different, but there is no difference in the call result.

본 발명의 방법으로 개발되는 웹데몬의 간단한 작동의 예를 도 7을 이용하여 설명하고자 한다. 웹서비스를 이용하는 사용자는 웹브라우저(701)의 Location에 URL을 직접입력하거나 웹문서에 표시된 앵커부분(700)을 클릭하면 웹브라우저는 해당 Location(URL)을 이용하여 서버의 접속주소와 서비스 포트번호를 알아내고 웹데몬(703)에 접속한다. 웹브라우저는 웹데몬에 접속이 성공되면 사용자로부터 요청받은 URL를 기초로 하여 HTTP 요청문서를 작성하여 웹데몬에 전송한다. 웹데몬은 전송받은 HTTP 요청문서를 분석하여 도 1, 도 2, 도 3, 도 4, 도 5, 도 6, 도 7 등에서 제시한 순서에 의해서 웹서비스 정보를 구성하여 웹브라우저에 전송하며, 전송받은 웹브라우저는 사용자에게 요청의 결과로서 표시하게 된다. An example of a simple operation of the web daemon developed by the method of the present invention will be described with reference to FIG. When the user using the web service enters a URL directly into the location of the web browser 701 or clicks the anchor part 700 displayed in the web document, the web browser uses the corresponding location (URL) to access the server's connection address and service port number. Find out and access the web daemon (703). When the web browser successfully connects to the web daemon, the web browser creates an HTTP request document based on the URL requested from the user and sends it to the web daemon. The web daemon analyzes the received HTTP request document, constructs web service information according to the order shown in FIGS. 1, 2, 3, 4, 5, 6, and 7, and transmits it to a web browser. Received web browser will display to the user as a result of the request.

이상과 같이 본 발명에 의하면, 웹데몬 혹은 웹어플리케이션을 개발하는 경우 홈페이지를 디자인하는 웹디자이너는 파일을 링크시키는 것과 같은 간단한 방법으로 가상의 파일을 링크함으로써 보다 짧고 개념화된 URI를 기술하는 과정의 작업으로 웹서비스를 구성하게 된다. 또한, 웹어플리케이션 개발자는 웹어플리케이션의 지정 확장자를 이용하여 편리하게 웹어플리케이션만을 강화시켜 개발할 수 있는 개발환경을 제공한다. 또한, '@'문자를 식별자로 하는 단체사용자의 웹서비스가 구분됨으로써 웹서비스로 일반화되어 있는 커뮤니티를 쉽게 인지하게 하여 웹디자인 작업시 간단한 URI로 기술하는 작업환경을 제공한다. 또한 '~'문자를 식별자로 하는 개인사용자의 웹서비스가 실제 시스템상의 사용자에 의하지 않아 도메인별로 웹 호스팅하는 웹서버 시스템에서 도메인별로 가입자마다 자유롭게 개인웹서비스 공간을 제공한다. 또한 웹디자인을 시행함에 있어 매크로기능을 활용하므로써 매크로문구의 위치를 자유자재로 바꾸는 것이 가능하게 되어 웹어플리케이션 혹은 웹서비스의 디자인적 요소를 프로그램의 수정이나 스크립트의 수정 단계를 거치지 않고 수행한다.As described above, according to the present invention, when a web daemon or web application is developed, a web designer who designs a homepage has a task of describing a shorter and conceptualized URI by linking a virtual file in a simple manner such as linking a file. The web service is configured. In addition, a web application developer provides a development environment in which a web application developer can conveniently develop only a web application by using a designated extension of the web application. In addition, by distinguishing the group user's web service with '@' character as an identifier, it makes it easy to recognize the community generalized as a web service and provides a work environment that describes with a simple URI when working on web design. In addition, the individual user's web service using '~' character is provided freely for individual subscribers by domain in the web server system that hosts web for each domain because the web service of individual user does not depend on the user on the actual system. In addition, it is possible to change the position of macro phrases freely by utilizing macro function in implementing web design, and perform design elements of web application or web service without going through program modification or script modification step.

다음은 일반 웹서버와 본발명을 이용한 웹서버의 게시판 기능의 웹어플리케이션 호출의 간단함을 표시한다. 웹어플리케이션의 링크방법인 <a>태그를 이용하면 다음과 같이 본 발명이 단순하고 이해하기 쉬운 구조로 된다.The following shows the simplicity of calling a web application of a bulletin board function of a general web server and a web server using the present invention. Using the <a> tag, which is a linking method of a web application, the present invention has a simple and easy-to-understand structure as follows.

가. 일반 웹서버에서의 사용 예end. Example of using in general web server

URL: http://www.cobee.net/cgi-bin/www-board.cgi?id=note&act=listURL: http://www.cobee.net/cgi-bin/www-board.cgi?id=note&act=list

<a href=/cgi-bin/www-board.cgi?id=note&act=list&page=0>게시판</a><a href=/cgi-bin/www-board.cgi?id=note&act=list&page=0> Bulletin board </a>

나. 본 발명을 이용한 웹데몬 웹어플리케이션 개발 예I. Example of developing a web daemon web application using the present invention

1. URL: http://www.cobee.net/note.brd  1.URL: http://www.cobee.net/note.brd

<a href=/note.brd>게시판</a><a href=/note.brd> Bulletin board </a>

2. URL: http://www.cobee.net/@game/http.html  2. URL: http://www.cobee.net/@game/http.html

<a href=/@game/http.html>http</a><a href=/@game/http.html> http </a>

다. 본 발명의 '@', '~', 가상 확장자를 이용한 웹어플리케이션의 링크 예All. Link example of web application using '@', '~', virtual extension of the present invention

1. URL: http://www.cobee.net/@game/note.brd   1.URL: http://www.cobee.net/@game/note.brd

<a href=note.brd>게시판</a> : 상대경로로 표시가능.<a href=note.brd> Bulletin </a>: Can be displayed in relative path.

: 단체사용자 소유의 게시판을 실행시키도록함           : To run a bulletin board owned by a group user

2. URL: http://www.cobee.net/~summerb/note.brd  2. URL: http://www.cobee.net/~summerb/note.brd

<a href=/~summerb/note.brd><a href=/~summerb/note.brd>

: 개인소유의 게시판을 실행시키도록 함.          : To run a private board.

라. 본발명의 '~'를 이용한 가상 사용자 ID의 웹영역을 표시하는 링크 예로서 한기의 시스템에서 도메인이 틀리다면 다음의 1,2 는 다른 웹영역으로 서비스된다.la. As a link for displaying a web area of a virtual user ID using '~' of the present invention, if a domain is wrong in one system, the following 1,2 are serviced by another web area.

1. URL: http://www.cobee.net/~master/   1.URL: http://www.cobee.net/~master/

2. URL: http://kseek.com/~master/  2. URL: http://kseek.com/~master/

표 1 에서 도메인에 따른 "UserHome"을 다르게 지정하도록 확장하여 개발하면 가상의 사용자에 대한 도메인마다 다른 위치를 이용하여 웹영역의 서비스를 구현하게 된다. In Table 1, when the extension is developed to designate "UserHome" according to the domain differently, the service of the web area is implemented by using different location for each domain for the virtual user.

이러한 용이한 URI 개념으로 이해되는 링크방법이 반복되는 웹디자인 작업시 웹디자이너는 개념적으로 간단해진 URI를 이용하여 편리하게 디자인할 수 있으므로 단위시간당의 디자인 생산성을 올릴 수 있으며 수정하거나 보수하는 과정에도 용이하게 된다. When web design work that links method is understood as easy URI concept is repeated, web designer can conveniently design using conceptually simplified URI, which can increase the design productivity per unit time and make it easy to modify or repair. Done.

대표도는 본 발명의 일 실시예에 따른 웹데몬의 구조도,Representative diagram is a structural diagram of a web daemon according to an embodiment of the present invention,

도 1 은 웹데몬의 웹서비스 제공 전 단계의 흐름도,1 is a flowchart of a web service providing step of a web daemon;

도 2 는 환경설정 파일로부터 초기화하는 단계의 흐름도,2 is a flowchart of a step of initializing from a configuration file;

도 3 은 URI를 검색하고 대응하여 원시자료를 얻는 단계의 흐름도,3 is a flowchart of steps of retrieving a URI and correspondingly obtaining raw data;

도 4 는 단체사용자의 URI로부터 원시자료를 얻는 단계의 흐름도,4 is a flowchart of obtaining raw data from a URI of a group user;

도 5 는 가상 URI의 확장자를 검색하여 원시자료를 얻는 단계의 흐름도,5 is a flowchart of a step of obtaining source data by searching for an extension of a virtual URI;

도 6 은 원시자료를 정의된 매크로의 처리과정에 대한 흐름도,6 is a flow chart of the processing of the macro defined raw material;

도 7 은 웹데몬의 가상적인 동작의 예에 대한 흐름도이다.7 is a flowchart of an example of a virtual operation of the web daemon.

..

Claims (9)

본 발명으로 웹데몬, 웹어플리케이션, 실행모듈을 개발함에 있어서,In developing a web daemon, a web application, an execution module according to the present invention, URI로부터 상대적인 연산을 통하여 실제 존재를 확인 할 수 없는 파일경로라 할 지라도 URI의 가상 확장자에 대응하는 웹어플리케이션 및 웹데몬의 호출함수를 실행하도록 구성하는 단계를 포함하는 시스템A system comprising the step of executing a web application and web daemon call function corresponding to a virtual extension of a URI, even if the file path cannot be verified by a relative operation from the URI. 본 발명으로 웹데몬 및 웹어플리케이션을 제작함에 있어서,In producing the web daemon and web applications in the present invention, URI의 해석 과정에서 '@'를 식별자로 하여 단체 사용자의 웹 영역 서비스를 구현하는 단계와, 이를 기반으로 웹문서(HTML Document)에 단체사용자의 웹서비스를 기술하는 단계를 포함하는 시스템A system including a step of implementing a web user service of a group user by using '@' as an identifier in the process of parsing the URI, and describing the web service of the group user in an HTML document based on the same. 본 발명으로 웹데몬 및 웹어플리케이션을 제작함에 있어서,In producing the web daemon and web applications in the present invention, URI의 해석 과정에서 '~'를 식별자로 하여 시스템 사용자가 아닌 가상의 사용자의 공간을 웹영역으로 제공하는 단계를 포함하는 시스템A system comprising the step of providing a virtual user space, not a system user, to the web area by using '~' as an identifier during the interpretation of the URI. 제 1 항에 있어서,The method of claim 1, 환경파일을 통하여 가상의 확장자와 이에 대응하는 어플리케이션의 파일경로를 지정하도록 하는 단계, 혹은 대응관계를 프로그램 자체에 초기화하 선언하거나 지정하는 단계를 포함하는 시스템.And specifying a virtual extension and a file path of an application corresponding thereto through an environment file, or initializing, declaring, or specifying a corresponding relationship in the program itself. 제 1항에 있어서,The method of claim 1, 본 발명의 일 실시예로서 제시된 "brd" 확장자를 이용하여 웹문서의 태그에 게시판 서비스를 링크하고자 기술하는 단계를 포함하는 시스템A system comprising the step of linking a bulletin board service to a tag of a web document using the "brd" extension presented as an embodiment of the present invention. 본 발명을 이용하여 웹데몬 및 웹어플리케이션을 제작함에 있어서,In producing a web daemon and a web application using the present invention, 웹데몬의 URI의 해석과 이에 대응하는 각각의 방법을 통해 얻어진 원시 데이터를 지정된 매크로 문자열을 검색하고 그 매크로 문자열의 위치를 기점으로 매크로의 실행결과를 삽입하여 웹자료를 재구성하는 단계를 포함하는 시스템A system comprising reconstructing web data by retrieving a macro string from the raw data obtained through the interpretation of the URI of the web daemon and corresponding methods, and inserting the macro execution result based on the location of the macro string. 제 6 항에 있어서,The method of claim 6, 원시 데이터에서 검색할 매크로를 환경설정 파일에 기록하여 프로그램의 기동시 초기화하는 단계, 혹은 프로그램의 개발단계에서 내부에 선언하여 대응시키는 단계를 포함하는 시스템A system comprising recording a macro to be retrieved from raw data in a configuration file and initializing it when the program is started, or declaring and responding internally at the development stage of the program. 제 6항에 있어서, The method of claim 6, 본 발명의 일 실시예로서 제시된 "#!@#"문자열을 포함하여 구성된 문자열을 매크로를 정의하는 단계와, "#!@#"문자열을 웹문서를 편집하는 과정에서 기술하는 단계를 포함하는 시스템A system comprising the steps of defining a macro of a string consisting of the string "#! @ #" Presented as an embodiment of the present invention, and describing the string "#! @ #" In the process of editing a web document. 제 1 항에 있어서,The method of claim 1, 환경파일을 통하여 가상의 확장자와 이에 대응하는 프로그램 내부의 기능함수를 지정하도록 하는 단계 혹은, 프로그램 자체에 초기화 선언하여 대응관계를 지정하도록 하는 단계를 포함하는 시스템A system including a step of specifying a virtual extension and a function function in a corresponding program through an environment file, or a step of initializing declaration in the program itself to specify a correspondence relationship
KR1020030078518A 2003-11-07 2003-11-07 Virtual URIUniform Resource Identifier based Webapplication and Web Macro Development Method KR100603248B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030078518A KR100603248B1 (en) 2003-11-07 2003-11-07 Virtual URIUniform Resource Identifier based Webapplication and Web Macro Development Method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030078518A KR100603248B1 (en) 2003-11-07 2003-11-07 Virtual URIUniform Resource Identifier based Webapplication and Web Macro Development Method

Publications (2)

Publication Number Publication Date
KR20050044014A true KR20050044014A (en) 2005-05-12
KR100603248B1 KR100603248B1 (en) 2006-07-20

Family

ID=37244425

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030078518A KR100603248B1 (en) 2003-11-07 2003-11-07 Virtual URIUniform Resource Identifier based Webapplication and Web Macro Development Method

Country Status (1)

Country Link
KR (1) KR100603248B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102981846B (en) * 2012-11-13 2016-10-05 北京奇虎科技有限公司 The method that Password Input frame element is processed and browser

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8375127B1 (en) * 1999-03-31 2013-02-12 International Business Machines Corporation Method and system for using virtual URLs for load balancing
KR20000063879A (en) * 2000-08-08 2000-11-06 황용운 system for search out homepage using telephone number and method thereof
KR100397818B1 (en) * 2000-11-03 2003-09-13 김동규 A method for discriminating string added to uniform resource locator, business method using the method and computer readable medium having stored thereon computer executable instruction for performing the business method
KR20020041032A (en) * 2000-11-25 2002-06-01 김지한, 김재형 System for providing Internet homepage by controlling virtual rootdirectory

Also Published As

Publication number Publication date
KR100603248B1 (en) 2006-07-20

Similar Documents

Publication Publication Date Title
KR101908162B1 (en) Live browser tooling in an integrated development environment
Gundavaram CGI programming on the World Wide Web
US7131063B2 (en) Method and system for delivering dynamic information in a network
Spiliopoulou et al. Improving the effectiveness of a web site with web usage mining
JP4824110B2 (en) Computer-implemented method, computer program, and data processing system for inheriting page layout for a page
US7207000B1 (en) Providing dynamic web pages by separating scripts and HTML code
US20060294500A1 (en) Web application generator
Esposito Programming Microsoft ASP. NET MVC
US20090013336A1 (en) Method and system for building compound extensible ajax applications
CN111666072A (en) Software code and document robot method
Purbo A Systematic Analysis: Website Development using Codeigniter and Laravel Framework
JP2001060179A (en) History recorder and history reproducing device
RU2442214C2 (en) The semantic navigation in the web-content and collections of documents
KR100603248B1 (en) Virtual URIUniform Resource Identifier based Webapplication and Web Macro Development Method
Li et al. Automated creation of navigable REST services based on REST chart
Hourieh Learning Website Development with Django
CN114282284A (en) Model data processing method, device, equipment and storage medium
Lingam et al. Supporting end-users in the creation of dependable web clips
Evjen et al. Professional ASP. NET 3.5 SP1 Edition: In C# and VB
JP4996504B2 (en) SBM server, registration screen generation method and program
CN113836450B (en) Data interface generation method for acquiring XPATH based on visual operation
Tanaka et al. Web API Creation for Enterprise Mashup
CN112732254B (en) Webpage development method, webpage development device, computer equipment and storage medium
Larsen et al. Engineering web-based systems with UML assets
Guo et al. Towards flexible mashup of Web applications based on information extraction and transfer

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130423

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140423

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150422

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160513

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170713

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190715

Year of fee payment: 14