RadarURL

조회 수 2545 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

install_mediawiki_1.jpg


install_mediawiki_2.jpg





미디어위키에 CKEditor(위지윅 에디터) 익스텐션 + LDAP 익스텐션 연동시키려면 버전 조합에 신경써야 한다.

왜냐하면 CKEditor의 경우 아래 링크에서 확인할 수 있듯이 연동을 지원하는 미디어위키 버전이 제한적이며(CKEditor는 브라우저 호환성 썩 좋지 않다)...
http://www.mediawiki.org/wiki/Extension:WYSIWYG

브라우저별 CKEditor 테스트 결과(스마트폰, 태블릿 류는 안 되는 듯)
Desktop
IE 10 - O
Firefox 26 - O
Chrome - O

Mobile
iPhone 5 Safari - X
iPad 4 Safari - X
Galaxy 2 - X

LDAP 모듈의 경우 2014년 1월 현재 최신버전인 1.22.0(2013-12-06)을 지원하는 LDAP extension이 없다. ㅋ
http://www.mediawiki.org/wiki/Extension:LDAP_Authentication

MediaWiki 1.14 [2]
MediaWiki 1.15 [2]
MediaWiki 1.16 [2]
MediaWiki 1.17.3
MediaWiki 1.18.6
MediaWiki 1.19.1
MediaWiki 1.20.3
MediaWiki 1.21.1



그래서 아래 조합으로 설치

OS : RHEL 6.5 x86_64
Apache : 2.2.20
PHP : 5.4.8
MySQL : 5.5.13
Mediawiki : 1.21.1
Extension:WYSIWYG (ckeditor) : WYSIWYG_MW_v1.20.2.zip
Extension:LDAP : 2.0c-31-g300d43f


http://test.asenjo.nl/index.php/Mediawiki_ipa



1. PHP 5.4.8 컴파일 설치

① 64bit RHEL의 경우(RHEL 6.4 x86_64)의 경우 openldap-devel 패키지의 /usr/lib64/libldap.so 를 /usr/lib에 심볼릭링크한다. 안 해주면 php 컴파일 시 ldap 헤더를 못 찾는다고 나오기 때문
[root@wiki php-5.2.11]# ln -s /usr/lib64/libldap.so /usr/lib/

② PHP 컴파일 ("--with-ldap", "--with-ldap-sasl" 옵션 포함)
[root@wiki php-5.2.11]# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --enable-mod-charset --with-config-file-path=/usr/local/apache/conf --enable-sigchild --with-libxml-dir --with-openssl --with-zlib --with-zlib-dir --with-bz2 --enable-calendar --with-curl --enable-dba --with-gdbm --enable-exif --enable-ftp --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --enable-gd-native-ttf --with-gettext --with-imap --with-imap-ssl --with-kerberos --enable-mbstring --with-mhash --with-mcrypt --with-mysql=/usr/local/mysql --enable-sockets --with-regex=php --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --with-ldap --with-ldap-sasl



Generating files
updating cache ./config.cache
creating ./config.status
creating php5.spec
creating main/build-defs.h
creating scripts/phpize
creating scripts/man1/phpize.1
creating scripts/php-config
creating scripts/man1/php-config.1
creating sapi/cli/php.1
creating main/php_config.h
creating main/internal_functions.c
creating main/internal_functions_cli.c
+--------------------------------------------------------------------+
| License:                                                           |
| This software is subject to the PHP License, available in this     |
| distribution in the file LICENSE.  By continuing this installation |
| process, you are bound by the terms of this license agreement.     |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point.                            |
+--------------------------------------------------------------------+

Thank you for using PHP.

[root@wiki php-5.2.11]# make && make install


2. PHP 가속기 설치

※ 참고링크
http://jmnote.com/wiki/Cannot_find_config.m4.
http://blog.keypointer.co.kr/?p=137


[root@wiki www]# /usr/local/php/bin/pecl version
PEAR Version: 1.9.4
PHP Version: 5.4.8
Zend Engine Version: 2.4.0
Running on: Linux wiki.idc-lds.co.kr 2.6.32-431.1.2.el6.x86_64 #1 SMP Sun Nov 24 09:37:37 EST 2013 x86_64
[root@wiki www]#



[root@wiki oci8]# pwd
/usr/local/src/APM/php-5.4.8/ext/oci8
[root@wiki oci8]#
[root@wiki oci8]# /usr/local/php/bin/pecl install apc
downloading APC-3.1.13.tgz ...
Starting to download APC-3.1.13.tgz (171,591 bytes)
.....................................done: 171,591 bytes
55 source files, building
WARNING: php_bin /usr/local/php/bin/php appears to have a suffix /bin/php, but config variable php_suffix does not match
running: phpize
Configuring for:
PHP Api Version:         20100412
Zend Module Api No:      20100525
Zend Extension Api No:   220100525
ERROR: `phpize' failed
[root@wiki oci8]#
[root@wiki oci8]# vi /tmp/patch-pear-builder.txt

--- Builder.php 2009-05-05 09:41:01.000000000 -0700
+++ Builder.php 2009-05-05 08:43:28.000000000 -0700
@@ -457,7 +457,16 @@
             $callback[0]->debug = $olddbg;
         }

-        $exitcode = is_resource($pp) ? pclose($pp) : -1;
+        if (is_resource($pp)) {
+            $exitcode = pclose($pp);
+            // If PHP was compiled with --enable-sigchild, pclose() return
+            // values cannot be trusted. (See http://bugs.php.net/bug.php?id=29123)
+            if ($this->_hasConfigureSetting('enable-sigchild') && $exitcode == -1) {
+                $exitcode = 0;
+            }
+        } else {
+            $exitcode = -1;
+        }
         return ($exitcode == 0);
     }

@@ -471,4 +480,35 @@
         }
         return PEAR_Common::log($level, $msg);
     }
+    
+    /**
+     * See if PHP was built with the particular configuration setting.
+     * Useful for checking whether --enable-sigchild is active; if it
+     * is, pclose() return values can't be trusted.
+     *
+     * @param string $setting the setting to check for. Will automatically
+     * have any leading dashes stripped.
+     *
+     * @return bool whether the setting is present
+     */
+    
+    function _hasConfigureSetting($setting) {
+        $setting = preg_replace("/^-+/", '', $setting);
+
+        ob_start();
+        phpinfo(1);
+        $cc = ob_get_clean();
+        foreach (explode("\n", $cc) as $line) {
+            if (array_shift(explode(' => ', $line)) == "Configure Command") {
+                $config = explode('___', preg_replace("/'\s+'/", "'___'", array_pop(explode(' => ', $line, 2))));
+                break;
+            }
+        }
+        foreach ($config as $opt) {
+            if (false !== strpos($opt, $setting)) {
+                return true;
+            }
+        }
+        return false;
+    }
}
\ No newline at end of file





[root@wiki oci8]# cd /usr/local/php/lib/php/PEAR
[root@wiki PEAR]# cp Builder.php Builder.php.bak
[root@wiki PEAR]# patch -p0 < /tmp/patch-pear-builder.txt
patching file Builder.php
Hunk #1 succeeded at 472 (offset 15 lines).
Hunk #2 succeeded at 495 (offset 15 lines).
[root@wiki PEAR]# cd /usr/local/src/APM/php-5.4.8/ext/oci8
[root@wiki oci8]# /usr/local/php/bin/pecl install apc
(중략)
Build process completed successfully
Installing '/usr/local/php/include/php/ext/apc/apc_serializer.h'
Installing '/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/apc.so'
install ok: channel://pecl.php.net/APC-3.1.13
configuration option "php_ini" is not set to php.ini location
You should add "extension=apc.so" to php.ini
[root@wiki oci8]#

▼ php.ini에 아래 내용 추가
[apc]
extension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/apc.so"

여기까지 했으면 아파치 재시작하여 APC 적용


3. Mediawiki 설치 후 Mediawiki용 LDAP extension 설치

① extensions 디렉토리에 아래 tar.gz 파일 압축 풀고 디렉토리명을 LdapAuthentication 로 변경
wikimedia-mediawiki-extensions-LdapAuthentication-2.0c-31-g300d43f.tar.gz

② extension 설치하면 아래 명령어로 데이터베이스 업데이트
[root@wiki www]# /usr/local/php/bin/php ./maintenance/update.php


③ Mediawiki의 LocalSettings.php 파일에 아래 내용 추가

require_once( "$IP/extensions/LdapAuthentication/LdapAuthentication.php" );

$wgAuth = new LdapAuthenticationPlugin();

# Domain name
$wgLDAPDomainNames = array(
    "idc-lds.co.kr",
);

$wgLDAPServerNames = array( "idc-lds.co.kr" => "ns.idc-lds.co.kr" );

$wgLDAPSearchStrings = array(
    "idc-lds.co.kr" => "uid=USER-NAME,cn=users,cn=accounts,dc=idc-lds,dc=co,dc=kr"
);

$wgLDAPEncryptionType = array(
    "idc-lds.co.kr" => "ssl"
);

# user and password for proxy agent. Use unprivileged user!!!
$wgLDAPProxyAgent = array(
  "idc-lds.co.kr"=>"uid=mediawikiuser,cn=users,cn=accounts,dc=idc-lds,dc=co,dc=kr"
);
$wgLDAPProxyAgentPassword = array(
  "idc-lds.co.kr"=>"mediawikiuserpassword"
);


출처 : http://mydoc.digimoon.net/board/zboard.php?id=board&page=1&sn1=&divpage=1&category=7&sn=on&ss=off&sc=off&select_arrange=hit&desc=asc&no=991

?

공부 게시판

공부에 도움되는 글을 올려주세요.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 [공지] 공부 게시판 입니다. 처누 2003.08.18 950260
194 유닉스/리눅스 [Rocky Linux 9] /home 용량 줄이고 /root 용량 늘리기 YooN 2026.04.03 49
193 유닉스/리눅스 [Rocky Linux] LVM 환경에서 /root 파티션 공간 부족 해결 YooN 2026.04.03 36
192 유닉스/리눅스 [Linux/Rocky] SSH Root 로그인하는 방법 (root 접속 허용) YooN 2026.04.01 38
191 유닉스/리눅스 리눅스 서버 설치 중 에러 "Failed to find a suitable stage1 device" YooN 2025.10.03 892
190 유닉스/리눅스 Linux 11 . Linux 설치 시 lvm 수동설정 YooN 2025.10.03 798
189 유닉스/리눅스 [Rocky Linux] 누구나 쉽게 따라하는 Rocky Linux 9.0 OS 다운로드 및 설치 방법~!! YooN 2025.10.03 764
188 유닉스/리눅스 Linux/Rocky Linux Rocky Linux : Composer 설치 YooN 2025.09.29 1032
187 유닉스/리눅스 [Rocky Linux] 록키 리눅스 최신 업데이트 적용 방법 YooN 2025.09.29 948
186 유닉스/리눅스 rocky linux 커널 업데이트 YooN 2025.09.29 802
185 유닉스/리눅스 Clonezilla(클론질라) 백업파일 하드디스크로 복구 방법 YooN 2025.09.28 886
184 유닉스/리눅스 클론질라 사용 방법 - OS 이미지 백업 CloneZilla YooN 2025.09.28 912
183 유닉스/리눅스 [Linux / Rocky] FTP 접속 관련 설정 실습 예제 YooN 2025.09.23 947
182 유닉스/리눅스 Could not reliably determine the server's fully qualified domain name YooN 2025.09.23 1005
181 유닉스/리눅스 [아파치] 아파치 웹서버에 .htaccess 파일 설정하는 방법 YooN 2025.09.23 905
180 유닉스/리눅스 [Linux] Apache web server의 rewrite module 사용하기 [출처] [Linux] Apache web server의 rewrite module 사용하기|작성자 g00dmoney YooN 2025.09.23 1236
179 유닉스/리눅스 록키 리눅스 9.1에서 apache, mysql, PHP 설치 YooN 2025.09.23 890
178 유닉스/리눅스 [권한문제] 라이믹스 Fatal error: Uncaught Rhymix\Framework\Exception: Cannot write template cache file YooN 2025.09.23 842
177 유닉스/리눅스 라이믹스 php 에러 표시 YooN 2025.09.23 626
176 유닉스/리눅스 Rocky Linux - 라이믹스(Rhymix) 설치하기 YooN 2025.09.23 763
175 유닉스/리눅스 라이믹스(Rhymix) 매뉴얼 YooN 2025.09.23 1025
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 Next
/ 10


즐겨찾기 (가족)

JAESOO's HOMEPAGE


장여은 홈페이지


장여희 홈페이지


장여원 홈페이지


즐겨찾기 (업무)

알리카페 홀릭

숭실대 컴퓨터 통신연구실 (서창진)

말레이시아 KL Sentral 한국인 GuestHouse


즐겨찾기 (취미)

어드민아이디

유에코 사랑회

아스가르드 좋은사람/나쁜사람

JServer.kr

제이서버 메타블로그

재수 티스토리


즐겨찾기 (강의, 커뮤니티)

재수 강의 홈페이지


한소리


VTMODE.COM


숭실대 인공지능학과


숭실대 통신연구실


베너