391

(1개의 댓글, PunBB 맛보기 글에 작성됨)

PunBB 설치와 갱신 방법은 PunBB를 내려받으면 함께 포함되어 있는 문서 폴더(Docs) 안의 Install.html에 자세히 나와 있습니다. 예를 들어 PunBB 1.0.* 버전에서 1.2.12 버전으로 갱신할 경우에는 우선 1.1로 갱신한 후에 다시 1.2로 갱신해 주고 마지막으로 1.2.12로 갱신해 주어야 합니다. 물론 각각의 갱신하는 단계에서는 DB를 갱신하는 과정도 거쳐야 갰지요.

만약을 대비해서 갱신 전에 꼭 파일들과 DB를 백업해 놓으시기 바랍니다.

392

(0개의 댓글, 어플리케이션 글에 작성됨)

클립보드 확장 관리 도구로 iSnip이라는 도구를 애용해 왔었습니다만, 새로 장만한 맥북에 설치할 요량으로 확인해 보니, 아직은 Universal Binary로 갱신되지 않았더군요.

그래서, 비슷한 기능의 무료 클립보드 도구들을 살펴본 결과, 마음에 드는 놈을 찾았습니다.
이름은 Jumpcut이라는 놈인데, 설치를 하면 iSnip과 같이 메뉴막대에 가위모양이 아이콘이 생겨서 이 아이콘을 선택하면 과거 베껴두었던 자료들을 선택해서 간편하게 붙이기를 할 수 있습니다.

http://appletree.or.kr/forum/files/jumpcut_menu.png

또는 환경설정에서 따로 지정할 수 있는 단축키(기본은 Control-Option-V)를 누르면 보여지는 창에서 화살표 키를 사용해서 원하는 자료를 선택해 불러올 수도 있답니다.

http://appletree.or.kr/forum/files/jumpcut_bezel.png

그림 파일들과 같은 글자 형식 이외의 베껴두기는 지원하지 않아서 약간 아쉽지만 간단한 사용법 때문에 마음에 드는군요. wink

393

(1개의 댓글, 맥 개발 글에 작성됨)

다음은 JavaScript의 객체 지향 디자인 원리들을 사용한 용례들입니다.

- Encapsulation

// JavaScript Pet class

function Pet(name) {
    this._name = name;
}

Pet.prototype._name;

Pet.prototype.getName = function() {
    return this._name;
}

pet class의 instance 생성과 getName() 함수 실행

var p = new Pet("Max");
alert(p.getName());

- Inheritance

// JavaScript Dog class

function Dog(name) {
    Pet.call(this, name);
}

// This defines the Pet class as the prototype object 
// for all Dog instances.
Dog.prototype = new Pet();

Dog.prototype.wagTail = function() {
    // Wagging
}

// JavaScript Cat class

function Cat(name) {
    Pet.call(this, name);
}

Cat.prototype = new Pet();

Cat.prototype.purr = function() {
    // Purring
}

이렇게 해서 생성된 새로운 class들과 method들은 다음과 같이 사용:

var d = new Dog("Max");
d.wagTail();

var c = new Cat("Fluffy");
c.purr();

- Polymorphism

// JavaScript Pet class
// ...

Pet.prototype.speak = function() {
    alert(this.getName() + " says...");
}


// JavaScript Dog class
// ...

Dog.prototype.speak = function() {
    Pet.prototype.speak.call(this);
    alert("woof");
}


// JavaScript Cat class
// ...

Cat.prototype.speak = function() {
    Pet.prototype.speak.call(this);
    alert("meow");
}

method들의 실행은 이전과 같이:

p = new Dog("Max");
p.speak();

p = new Cat("Fluffy");
p.speak();

이렇게 보면, C#이나 Java처럼 강력한 기능들을 제공하지는 않지만, 객체 지향의 구조를 갖는 웹 어플리케이션들을 개발하는데 충분한 가능성들을 제공하고 있답니다.

394

(2개의 댓글, Mac OS 글에 작성됨)

Mac OS X: 도대체 이 프로세스들(Processes)이란 무엇인가?
- 뒤에서 보이지 않게 실행되는 프로세스들(Processes)과 디먼들(daemons)에 관한 짧은 항목

By Gordon Davisson
Copyright (c) 2005, Westwind Computing inc.

Mac OS X는 다른 Unix OS들 처럼 항상 뒤에서 돌아가면서 여러가지 일들을 처리하고 있는 몇 가지의 작업들을 가지고 있습니다. 보통, Activity Monitor를 열어서 보거나 터미널에서 작업 목록을 살펴볼 수 있는 ps 혹은 top 명령을 실행해서 확인하지 않는 한은 눈치챌 수 없을 겁니다. 만약 이를 확인하더라도 도대체 이런 작업들이 무엇을 하고 있는지 궁금해 하실 겁니다. 여기에는 이런 궁금증을 풀어줄 수 있는 작업들의 목록입니다.

주의: 이 곳에 나열되어 있는 목록들은 완전한 것은 아닙니다. 만약 이 목록에 없는 작업들을 보시게 되더라도, 어떤 것이 잘못되었거나 해킹된 것을 뜻하지는 않습니다. 이것은 아마도 제가 작업 항목들을 갱신하면서, 미처 추가하지 못 한 것들이 있을 수도 있음을 알려드립니다.

시스템 작업들 (주로 root 권한으로 행해짐):

AppleFileServer - 개인 파일 공유 (AFP over IP) 서버. 시스템 환경 설정의 공유 항목에서 파일 공유가 켜져있을 때에만 있게 됨.
autodiskmount - 외장 디스크들이나 미디어를 화면 위에 올려놓는(mounting) 일을 함.
automount - 네트워크 (NFS와 AFP) 파일 시스템에 접속하거나 사용되지 않을 때에 자동적으로 화면 위에 올려놓거나 내림.
configd - 컴퓨터와 그 주변 환경(주로 네트워크)에 관한 유동적 설정 정보를 살피고 관리함.
CrashReporter - 프로그램 오류들에 관한 정보를 기록함. 오류들은 ~/Library/Logs에 기록되도록 설정될 수 있음.
cron - 예정되어 있는 다양한 프로그램들과 스크립트들을 실행시키며, 대부분 컴퓨터의 주기적 유지보수를 위해 실행됨. Mac OS X 10.4에 와서는, 대부분 launchd로 대치되었으나, 이전과의 호환성을 위해서 존재함.
DirectoryService - 이 작업은 "Directory" 정보를 위한 중앙 정보 교환 기관과 비슷한 역할을 한다 - 주로 사용자/단체/인증, 그리고 서비스 위치(예: 파일 서버, 프린터, 등). 이것은 다양한 플러그인들(NetInfo, LDAP, Active Directory, NIS, Bongjour/Rendesvous/, AppleTalk, SMB)로부터 정보들을 모아서, 이 정보를 필요로 하는 프로그램들에게 알려주는 역할을 한다.
DesktopDB - 현재 알려진 어플리케이션들과 그들의 문서 유형에 관한 정보들을 관리함. Finder에서 관련 문서들과 이 문서들을 처리할 수 있는 어플리케이션들을 파악할 때 사용.
distnoted - 분배된 알림 서비스들(distributed notifications services)을 제공.
dynamic_pager - 커널의 가상 메모리를 위한 스왑(swap) 파일들을 관리하는데 도움을 줌.
ftpd - 접근하는 FTP(File Transfer Protoco) 접속들을 다룸. 이 작업은 xinetd (혹은 이전 OS X 버전들에서는 inetd)에 의해 유동적으로 생성되며, 누군가가 실제로 컴퓨터에 접속을 해야만 나타난다.
httpd - 이것은 OS X에 설치되어 있는 웹 서버인 Apache이다. 시스템 환경 설정의 공유 항목에서 웹 공유가 켜져있어야만 실행된다. 이런 작업들이 하나는 root에 속해 있고, 나머지들은 www에 의해 여럿이 실행되는 것은 정상이다.
init - (10.0-10.3에만 해당) BSD/unix 관점에서 보면 이것은 컴퓨터의 핵심 관리자가 된다. 이것은 여러 백그라운드 작업들을 생성(/etc/rc* 스크립트들과 StartupItems을 사용)하고 돌보는 역할을 맡고 있다. Mac OS X 10.4에서는 launchd로 대치되었다.
inetd - (10.0-10.3에만 해당) 컴퓨터에서 제공되는 몇몇 인터넷 서비스들(주로 FTP와 telnet)을 실행하고 관리하는 역할을 함. 10.2 버전에 와서, 이 기능은 xinetd로 대체되었고 나중에 또 다시 launchd로 대체되었으나, Mac OS X 10.3까지는 호환성을 위해 존재하였다.
ipconfigd - (10.0-10.1.1에만 해당) 자동적으로 네트워크를 설정함. 지금은 configd로 병합됨. (내가 올바르게 읽은 것이라면 OS X 10.1.2에서부터)
KernelEventAgent - 파일 시스켐 상태들에 대한 경고들을 처리. (예: "지금 사용하고 있는 서버는 더 이상 접근할 수 없습니다. 계속 접속을 시도해 보시겠습니까?" 혹은 "당신의 시동 디스크는 거이 꽉 찼습니다. 파일을 지워서 시동 디스크의 사용 가능한 공간을 더 늘려주어야 합니다.")
kextd - 필요할 때마다 커널 확장자들(예: 장치 드라이버들)을 읽어드리거나 내려놓는 역할을 함.
launchd - (10.4 버전 이후) 이 작업은 initmach_init 작업을 대신하면서, 대부분의 cronxinetd의 기능들을 수행함.
mach_init - (10.0-10.3에만 해당) 마흐 커널(Mach kernel)의 bootstrap port 서버. 이것은 시동시 처음 생성되는 작업이며, BSD init 작업들 생성함. (그리고 나서는, 기타 모든 작업들을 생성하게 됨) Mac OS X 10.3에서는, 또한 StartupItems를 통해 생성되는 몇몇 디몬들(daemons)을 생성하는데도 쓰여진다. Mac OS X 1`0.4에서는 launchd로 대체됨.
mDNSResponder - 다중 방출(multicast) DSN(Bonjour/Rendezvous의 구성품) 응답기(responder): 이것은 컴퓨터가 지정한 ".local" 이름을 포함한 컴퓨터에서 제공하는 AFP 파일 공유와 같은 네트워크 서비스들을 공시하는 역할을 함. 주의: 이것은 보안상의 이유로 가상 사용자인 "nobody"에 의해 실행됨.
netinfod - NetInfo 자료의 배포 담당. 컴퓨터에서 제공하는 각 NetInfo 도메인 당 하나의 프로세스가 존재하게 됨. (보통은 로컬 도에인만을 위해 하나만 있음) ProcessViewer/Activity Monitor에서는 어떤 디몬(daemon) 작업이 어떠한 NetInfo 도메인을 위한 서비스인지 구별할 수 없으나, ps 명령을 사용하면 가능함.
nfsiod - NFS 서버로의 비동시적인 요청 서비스들을 담당. 이런 몇 가지 작업들이 동시에 수행되고 있는 것은 정상임.
nibindd - NetInfo 서버들(예: netinfod)을 검색하고, 생성하며, 파괴함. 이 작업은 표준 로컬 NetInfo 도메인 이외의 것이 생성되어 있어야만 존재함.
notifyd - 프로세스들 간의 이벤트(event) 공시들을 전달해 줌.
ntpd - Mac의 시계를 네트워크 시간 서버들과 동기시킴.
pitond - Restrospect 백업 클라이언트. (Restrospect Client를 설치했을 때만 있음)
pmTool - 이것은 실제로 사용자의 작업이지만 root의 권한으로 실행된다. Activity Monitor가 실행되고 있는 작업들의 정보를 모을 때 사용한다.
portmap - 유동적으로 RPC(네트워크의 Remote Procedure Call) 서비스들(에를 들어 NetInfo와 NFS)을 TCP/UDP 포트들에 지정함.
slpd - Service Location Protocol(SLP) 응답기; 컴퓨터에서 제공되는 네트워크 서비스들(예: AFP 파일 공유)을 공시함. SLP는 Bonjour/Rendezvous에 의해 완전하게 대체되었으나, 네트워크에 있는 다른 컴퓨터들과의 호환성을 위해 남아있음.
slpdLoad - 이 작업은 초창기 OS X 버전의 경우 ProcessViewer에서 종종 유령(Zombie)처럼 보여지는데, 걱정을 안해도 될 것은 전혀 해가 되지 않고, 단지 약간 혼란스러울 수 있을 뿐이다. (여기서 유령 작업이란, 작업을 끝마쳤으면서도 (죽었지만), 상위 프로세스에서는 종료되었다는 신호를 받지 못 한 상태를 나타낸다. 상위 프로세스가 인식할 때까지 작업의 정보를 전달해주기 위해, 작업 자체는 끝났지만 좀비의 존재는 프로세스 테이블에 계속 남게 된다. 약간 특이하게 보일 수도 있지만, 이것은 어떠한 자원도 소모하지 않기 때문에, 별로 문제가 될 것은 없다.)
sshd - secure shell 서버 -- 들어오는 SSH(암호화된 원격 로그인) 접속을 탐지하고 다루는 역할. 10.0.1 버전에서 추가되었으며 시스템 환경 설정의 공유 항목에서 "원격 로그인 허용"이 선택되었을 때에만 존재함. 주의: 10.3에 와서는, ssh 접속 상황을 탐지하기 위해 지속적으로 실행되지는 않고, 대신에 xinetd(v10.3) 혹은 launchd(v10.4)가 탐지해서 실제로 필요할 때에만 sshd를 실행시킴.
syslogd - 시스템 상태와 오류 메시지들을 기록하거나 전파함.
telnetd - 들어오는 telnet(원격 로그인) 접속들을 다룸. Mac OS X 10.0 시스템 환경 설정의 공유 항목에 있는 "원격 로그인 허용"이 선택되어 있을 경우 실행되며, 이후 버전들에서는 사용 안되고, 대신 SSH가 사용됨. (/etc/inetd.conf 파일을 수정해서 직접 다시 켜 놓을 수는 있음) 이 작업은 inetd에 의해서 유동적으로 생성되며, 실제 누군가가 컴퓨터에 telnet으로 접속했을 때에만 나타남.
update - 디스크가 항상 파일 시스템 캐쉬 파일과 동기화 될 수 있도록 관리해서, 시스템이 정지될 경우에도 자료 손실을 최소화하기 위함.
xinetd - 컴퓨터에서 제공하는 몇 가지 인터넷 서비스들(주로 ssh, FTP 그리고 telnet)을 관리하고 실행시키는 역할을 함. 이것은 요약하면 inetd가 개선된 버전이라고 할 수 있다. Mac OS X 10.4에서는 대부분 launchd으로 대치되었으나, 호환성을 위해 남겨두었다.

사용자 작업들 (보통 현 사용자에 의해 실행됨):

ATSServer - Apple Type Solution Server; 사용 가능한 글꼴들을 관리하고 이것들을 어플리케이션들이 사용할 수 있도록 함.
Dock - Dock을 표시하고 관리함.
DocklingServer - Dock에 추가되고 삭제되는 상태를 지켜보면서 가장 최신의 모습을 표시해 줌.
Finder - 말 그대로 그 Finder.
hdid - 화면 위에 올려진 디스크 이미지(.img와 .dmg) 파일들을 다룸.
LaunchCFMApp - 예전 스타일의 Macintosh 형태(Code Fragment Manager 형식인 CFM 혹은 PEF)로 된 어플리케이션들은 Process Viewer에서는 이 이름으로 보이게 됨. 실제로 LaunchCFMApp은 이런 옛 어플리케이션 형태와의 호환성을 위해 감싸주는 프로그램이다. 단지 Process Viewer가 감싸있는 것을 뚫고 안에서 실행되고 있는 실제 어플리케이션을 보지 못할 뿐이다. (주의: 예전 것(CFM)과 새 것(mach-o)의 형식 차이는 예전 것(Carbon)과 새로운(Cocoa) 어플리케이션 환경과의 차이와는 구분된다. OS X에서 사용하게 되는 대부분의 Carbon 어플리케이션들은 mach-o 형식이다.)
loginwindow - 이것은 부분적으로만 사용자 작업에 속해 있다. -- 이 작업은 누가 컴퓨터에 로그인 하기도 전에 실행되며, 로그인 화면을 표시하거나 (혹은 자동 로그인이 설정되어 있을 경우 건너뛰고), 로그인 시도를 인증하고, 로그인 시 사용자의 환경을 설정한다. (Finder, Dock, 로그인 어플리케이션 등의 실행) 이것은 또 사용자 작업들에 대한 작업 감시의 역할도 하는데, Finder나 Dock이 작동을 멈추면 재실행시키고, 어플리케이션의 강제 종료 창을 구현하게 된다. 마지막으로, 로그아웃, 재시동, 그리고 시스템 종료 과정들을 관장한다.
pbs - pasteboard 서버; Mac OS 9의 클립보드에 해당.
pmTool - Activity Monitor가 실행되고 있는 작업들에 대한 정보들을 수집하기 위해 사용하는 뒤에서 안보이게 실행되는 작업.
SystemUIServer - (OS X 10.1 이후) 메뉴 막대의 오른쪽 귀퉁이에 있는 메뉴 항목들을 관리함.
TruBlueEnvironment 혹은 (null) - OS 9 호환성을 위한 클래식(Classic) 환경. 이 하나의 작업에는 OS 9과 실행되고 있는 모든 클래식 어플리케이션들을 포함하고 있다. 붙여진 이름은 예전 클래식 환경의 코드 이름으로 쓰였던 "Blue Box"에서 따왔다. 알 수 없는 이유로, (Mac OS X v10.3 상의) Activity Monitor에서는 이 작업의 이름이 (null)로 표시되는 경향이 있다.
WindowServer (혹은 Window Manager) - 컴퓨터의 화면 표시를 담당하고 있으며 화면에 정보를 표시하고자 하는 여러 어플리케이션들과 기타 작업들 간 중재의 역할을 한다. 또한 새로운 사용자 어플리케이션들을 실행시키는 허드렛일을 맡고 있어서, 대부분의 사용자 작업들은 작업 계층의 관점에서 보면 실제로 모두 하위 작업들에 속하게 된다.

따옴 - Mac OS X: What Are All Those Processes?

395

(178개의 댓글, Mac OS 글에 작성됨)

현재 바깥 날씨 widget이 현재의 날씨 상태를 참고하고 있는 기상청의 현재 날씨 정보 페이지가 5 월 21일 이후 거이 5 일이 넘도록 갱신이 되고 있지 않습니다. sad
이는 아마도 전에 건의했던 주말에는 잘 갱신이 이루어지지 않았던 문제들을 포함한 여러 문제들을 점검하게 되면서 시스템 작동이 멈추어 있는 것으로 보입니다만, 이것도 저의 추측일 뿐, 이 문제와 관련해서 기상청 사이트에는 아직 어떠한 내용도 확인할 수가 없는 상태입니다.

조만간, 기상청 영문 페이지가 일주일 기상 예보, 영문으로 된 기상 개황 글자 표시를 포함한 여러 기능들이 개선될 예정이라고 하니, 당분간은 지켜볼 수 밖에는 없을 것 같습니다.

396

(0개의 댓글, 사과 상자 글에 작성됨)

새로 발표된 맥북(MacBook)은, 이전 모델들과는 달리, 사용자가 쉽게 RAM과 하드 디스크를 교체할 수 있도록 설계되었답니다.

아래는 교체 과정을 담은 Flash 동영상이 담긴 주소입니다.
http://www.youtube.com/v/8c6ckjy-gdY

더 이상 하드웨어 업그레이드를 위해 사용자가 "로켓 사이언티스트"가 될 필요는 없겠군요. :thumbup:

397

(0개의 댓글, 어플리케이션 글에 작성됨)

맥용 무료 바이러스 검색기인 ClamXav는 유명한 오픈 소스 바이러스 검색 엔진인 ClamAv를 기반으로 하고 있습니다.

http://appletree.or.kr/forum/files/clamXavMainScreen.jpg

현재, Universal Binary로 배포되고 있으며, 요새 부쩍 Intel 기반 맥들에서도 (Windows 설치의 부작용으로) 바이러스 검색기의 필요성이 증가되고 있는 상황이라서 반가운 소식이라 생각됩니다.

ClamXav 내려받기

398

(1개의 댓글, 어플리케이션 글에 작성됨)

현재 Apple의 사이트에서는 QuickTime 삽입을 위한 OBJECT와 EMBED 꼬리표들(tags)의 생성을 위해서 JavaScript 파일을 불러와서 함수들의 선언으로 손쉽게 처리하고 있다.

사용 가능한 함수들은,

[uli]QT_WriteOBJECT() - HTML 꼬리표들을 생성하고 함수가 선언되어 있는 문서에 삽입[/uli]
[uli]QT_WriteOBJECT_XHTML() - XHTML 꼬리표들을 생성하고 함수가 선언되어 있는 문서에 삽입[/uli]
[uli]QT_GenerateOBJECTText() - HTML 꼬리표들을 생성하고 함수가 선언되어 있는 문서에 string으로 삽입[/uli]
[uli]QT_GenerateOBJECTText_XHTML() - XHTML 꼬리표들을 생성하고 함수가 선언되어 있는 문서에 string으로 삽입[/uli]
[uli]AC_QuickTimeVersion() - 파일의 버전을 소숫점 번호로 돌려줌[/uli]

실제 함수 사용은 다음과 같은 형식으로 문서 안에서 불러주면 된다.

<script language="JavaScript" type="text/javascript">
      QT_WriteOBJECT(srcURL, width, height, activeXVersion,
         "attributeName1", "attributeValue1",
         "attributeName1", "attributeValue2",
         "attributeName1", "attributeValue3",
         "attributeName1", "attributeValue4",
         ...
         "attributeNameN", "attributeValueN"
      );
</script>

여기서 "classid", "codebase", 그리고 "pluginspage" 꼬리표들은 위의 속성 항목들에서 지정되지 않았다면, 자동적으로 기본 값들이 채워지게 된다.

399

(7개의 댓글, PunBB 맛보기 글에 작성됨)

일반 zip 형식 압축파일인데 안열린다니 이상하군요. 새로 압축한 파일로 다시 올려놓겠습니다.

설치 문제가 아니라면, 서버 설정이나 외적인 요인이 문제일 수도 있겠군요. 도움을 드리지 못해 안타깝습니다.

400

(7개의 댓글, PunBB 맛보기 글에 작성됨)

참 난감한 문제군요.

그림 파일을 첨부하셨다고 하셨는데, 그렇다면 첨부 그림 파일의 링크를 눌렀을 때 뜨는 새로운 창에서는 그림 파일이 제대로 잘 보이는지요?
그림 파일이 보이지도 않는다면, 혹시 파일이 서버에 제대로 저장되지 못해서 생기는 문제가 아닌지...

php.ini 파일에 있는 "file_uploads" 값이 "On"으로 되어 있는지, 그리고 "upload_max_filesize" 값도 충분하게 지정되어 있는지도 확인해 보시고 Apache 서버를 재시동 해보시기 바랍니다.

이것도 아니라면, 처음부터 다시 설치해 보시라는 말씀 밖에 해 드릴 수가 없군요.

참고를 위해, Attachment Mod를 위해 이 곳 포럼에서 수정했던 관련 파일들(delete.php, edit.php, moderate.php, post.php, viewtopic.php)을 올려놓습니다. 수정 파일들은 현재 사과나무 이야기 마당에 추가해놓은 다른 수정본들(Mods)도 함께 적용/수정되어 있음을 유의하시기 바랍니다.

401

(4개의 댓글, PunBB 맛보기 글에 작성됨)

금새 나온다고 치더라도, 이미 설치해 놓은 수정본들이 많다면, 그대로 이주하는 일이 만만치는 않을 것 같군요. roll

402

(7개의 댓글, PunBB 맛보기 글에 작성됨)

leeclean 씀:

include/attach/밑에 있는 attach_*.php 파일들 내용을 고쳐야 하는 건지요?
살펴보니 md5를 이용하여 타임값 같은 걸로 임의의 이름을 정해 첨부파일명을 바꿔서 ***.***.attach 로 바꿔 저장하던데요..

올바로 설치가 되었다면, 그 곳에 있는 파일들은 수정해줄 필요가 없겠지요.

문제는, 말씀하신데로 attachment.php에서 올려진 파일을 제대로 읽지 못하는 것 같습니다. 가능성은 희박하지만, 당장 의심되는 부분은 Attachment Mod에 설정되어 있는 "Current subfolder"가 실제의 폴더 이름과 일치하는지 확인해 보시기 바랍니다. 그리고, 첨부 파일 링크를 눌렀을 때, 새로 뜨는 창의 제목에도 파일 이름이 제대로 표시되지 않는지요? 그렇다면, db에 있는 filename이 올바로 저장되어 있는지도 확인해 보시기 바랍니다.

참고로, Attachment Mod에 사용된 함수들에 관한 정보는 Attachment Mod의 Document 페이지에 나와 있습니다.

403

(7개의 댓글, PunBB 맛보기 글에 작성됨)

올리신 그림을 보고 추측하건데, 혹시 html 아니면 htm 확장자를 가진 웹 문서를 첨부해 놓고서 내려받으려고 하신 것이 아닌지요?

Attatchment Mod에서는 보안상의 이유로 관리자 이외의 사람이 웹 문서 파일등 특정 파일들(html, htm, php, php3, php4, exe, com, bat)의 첨부와 내려받기를 기본적으로 막고 있습니다.

이 문제도 아니라면, 다시 한 번 설치과정 중에 실수가 없었는지 확인해 보시기 바랍니다.

404

(4개의 댓글, PunBB 맛보기 글에 작성됨)

PunBB 포럼의 관련 글타래에 의하면,

[uli]조금 더 다듬어진 markup과 CSS (불필요한 markup은 줄이고, 접근성은 늘리고, 등등)[/uli]
[uli]"깔끔한 URLs" (mod-rewrite 사용)[/uli]
[uli]새로 읽은 이야깃거리의 구분기능[/uli]
[uli]글 올리기 기능에 대한 개별 관리기능 (사용자 등록 관리를 통한?)[/uli]
[uli]여러 권한들을 갖고 있는 다중 돌보는 이들이 포함된 집단들의 추가[/uli]
[uli]개선된 발신 신호 (이야깃거리 발신신호, RSS, Atom, XML 등)[/uli]
[uli]"언어별 현지화가 가능한" 관리자 인터페이스[/uli]
[uli]모양별 templates[/uli]

이것들 외에도, 수정본들을 통해 자주 설치되는 개별 메시지 기능과 투표 기능 등의 설치는 "확장 시스템"의 채용으로, 지금처럼 코드를 일일이 수정해줄 필요없이도 쉽게 설치가 가능하게 된답니다. 약간의 아쉬웠던 부분들은 이제 거이다 매듭지어 질 듯. :thumbup:

:arrow: PunBB의 개발 현황 살펴보기

405

(0개의 댓글, PunBB 맛보기 글에 작성됨)

[ code = applescript]
[ / code] *** 공백 없이 사용할 것 ***

[code=applescript]
tell application "Finder"
  activate
  select file "AppleScript.url"
  set position of selection to {656,277 }
  set position of selection to {700,282 }
  select file "terms.pdf"
-- comment line
  set position of selection to {723,192 }
(*
  this is a
    comment
*)
end tell[/code]

[code=pascal]
program cgi_test;

uses
    WinCrt,SysUtils;//I use freepascal
{
#i am not expert with Apache :-(
#add to apache server config file httpd.conf  this line

AddHandler cgi-script cgi exe,
}

begin
  //send header to the browser
  WriteLn('Content-Type: text/html');

  WriteLn('');//end of header
 
  //send html
  WriteLn('<html>');
  WriteLn('<body>');
  WriteLn('<h5>Hello World From Pascal</h><br>');
  //WriteLn(IntToStr(ParamCount));
  WriteLn('</body>');
  WriteLn('</html>');
end.[/code]

Firebird SQL 1.5
[code=firebird]
create or alter procedure "procLogin"
(
  "UserName" varchar(60),
  "UserPassword" varchar(60),
  "UserSite" integer,
  "UserIsOccult" integer
)
returns
(
  "SessionID" integer,
  "User" integer
)
as
declare variable "UserAccount" integer;
-- variable of user
begin
/* select a user from
   users table */
    select "UsrID" from "Users"
    where "UsrName"=:"UserName" and
          "UsrPassword"=:"UserPassword"
    into :"User";
    if ("User" is not null) then
    begin
      "SessionID"=CURRENT_CONNECTION;
      insert into "Sessions" ("SessionID","SessionUser","SessionSite","SessionIsOccult")
          values(:"SessionID",:"User",:"UserSite",:"UserIsOccult");
    end
  suspend;
end[/code]

[code=mssql]
-- Back up the currently active transaction log.
BACKUP LOG MyNwind
TO MyNwind_log2
WITH NO_TRUNCATE
GO
-- Restore the database backup.
RESTORE DATABASE MyNwind
FROM MyNwind_1
WITH NORECOVERY
GO[/code]

[code=php]
<?php

$db_type = 'mysql';
$db_host = 'localhost';
$db_name = 'parmaja_com';
$db_username = 'zaherdirkey';
$db_password = 'diputstonmai';
$db_prefix = 'punbb_';
$p_connect = true;

$cookie_name = 'punbb_cookie';
$cookie_domain = '';
$cookie_path = '/';
$cookie_secure =0 ;

if (!isset($language))
  $language = 'en';

//header('Content-Type: text/html; charset=windows-1256');
header('Content-Type: text/html; charset=windows-1256');

$pun_url='http://www.parmaja.com/forum';

/* define('PUN',1 );
if (getenv('SITE')=='LOCAL')
{
        define('PUN_DEBUG',1);
}
*/

$s='select * from forums
where forum not found';

?>[/code]

지원 언어들: apache, applescript, cpp, delphi, firebird, ini, mssql, pascal, php, sql, vb, vbnet, vbscript