RadarURL

조회 수 1884 추천 수 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 928102
166 유닉스/리눅스 [U2L] Unix to Linux 기대효과 분석 JaeSoo 2023.05.16 1258
165 유닉스/리눅스 리눅스 inodes full 이슈 해결 방법 JaeSoo 2023.05.02 169
164 유닉스/리눅스 inode full JaeSoo 2023.05.01 115
163 유닉스/리눅스 마이크로서비스 아키텍처(MSA) 개념 소개 file JaeSoo 2023.01.26 170
162 유닉스/리눅스 리눅스(Linux) 디렉토리 구조 file JaeSoo 2016.10.20 693
161 유닉스/리눅스 ssh서버가 비밀번호를 거부했습니다. 다시 시도하십시오. JaeSoo 2016.08.23 302
160 유닉스/리눅스 [리눅스] IP 설정 변경 하기 file JaeSoo 2016.08.23 326
159 유닉스/리눅스 리눅스 설치후 초기설정해야 할 것들 [2] file JaeSoo 2016.07.13 400
158 유닉스/리눅스 리눅스 설치후 초기설정해야 할 것들 [1] file JaeSoo 2016.07.13 360
157 유닉스/리눅스 쉘 프로그래밍을 이용한 시스템 관리 기법 file JaeSoo 2016.05.12 679
156 유닉스/리눅스 AIX 자주 쓰이는 관리 명령 모음 JaeSoo 2016.05.12 615
155 유닉스/리눅스 AIX 시스템상의 core, SMT(Simultaneous Multi Threading) 수 확인하기 JaeSoo 2016.05.12 695
154 유닉스/리눅스 리눅스 호스트명 변경 JaeSoo 2016.05.11 728
153 유닉스/리눅스 AIX 서버 기초 JaeSoo 2016.05.11 630
152 유닉스/리눅스 AIX Admin Study 교육 자료 JaeSoo 2016.05.11 715
151 유닉스/리눅스 성능 엔지니어링 대한 접근 방법 (Performance tuning) file JaeSoo 2016.05.05 874
150 유닉스/리눅스 Linux/Unix용 nmon 설치 및 구성 file JaeSoo 2016.05.04 773
149 유닉스/리눅스 [AIX] 파일시스템 관리 (du, df) JaeSoo 2016.05.04 770
148 유닉스/리눅스 IBM AIX Admin (사용자 DISK 관리) JaeSoo 2016.05.04 686
147 유닉스/리눅스 [UNIX] 유닉스 기본명령어 JaeSoo 2016.05.04 562
Board Pagination Prev 1 2 3 4 5 6 7 8 9 Next
/ 9


즐겨찾기 (가족)

JAESOO's HOMEPAGE


YOUNGAE's HOMEPAGE


장여은 홈페이지


장여희 홈페이지


장여원 홈페이지


즐겨찾기 (업무)

알리카페 홀릭

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

말레이시아 KL Sentral 한국인 GuestHouse


즐겨찾기 (취미)

어드민아이디

유에코 사랑회

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

JServer.kr

제이서버 메타블로그

재수 티스토리


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

재수 강의 홈페이지


한소리


VTMODE.COM


숭실대 인공지능학과


숭실대 통신연구실


베너