RadarURL
Skip to content
조회 수 2070 추천 수 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
번호 제목 글쓴이 날짜 조회 수
162 CC 및 GCC 컴파일러 설치와 환경 설정 처누 2004.06.09 16696
161 리눅스 rawrite 유틸리티 사용하기 JaeSoo 2006.01.03 36369
160 리눅스 외부 드라이버 로딩을 위한 dd 명령어 사용하기 JaeSoo 2006.01.03 15258
159 Linux서버에 오라클10g 설치하기 JaeSoo 2007.04.15 8892
158 Tomcat을 버젼별로 실행하기 JaeSoo 2007.06.08 7592
157 리눅스 파일 시스템에서 숨김 속성 적용 방법 JaeSoo 2010.02.08 10952
156 페도라12 yum(rpm)으로 APM 설치 (수호신패치 포함) JaeSoo 2011.06.08 12310
155 Micosoft Windows에서 리눅스를 coLinux!! JaeSoo 2012.11.30 5544
154 SULinux 2.0 설치 가이드 JaeSoo 2012.12.06 65157
153 SULinux 2.0 APM 인스톨 툴 JaeSoo 2012.12.06 5576
152 Apache/FastCGI JaeSoo 2013.03.08 5915
151 nobody 디렉토리 삭제가 안될 때 JaeSoo 2013.04.01 6941
150 리눅스 tar, gz 압축 및 해제 JaeSoo 2014.03.25 1326
149 Linux FTP 설정, vsftpd 설정 JaeSoo 2014.03.25 1288
148 vsftpd 실행하기 JaeSoo 2014.03.25 870
147 vsFTP ftp로 root 계정 접속 JaeSoo 2014.03.25 1098
146 레드햇,우분투 리눅스(Linux) 다운로드 JaeSoo 2014.03.27 1068
145 touch (파일의 날짜시간정보를 변경) JAESOO 2014.04.29 1371
144 vsftp root로 접속하기 JAESOO 2014.04.29 1369
143 스트러츠와 스프링의 비교 JAESOO 2014.05.09 1414
Board Pagination Prev 1 2 3 4 5 6 7 8 9 Next
/ 9

PageViews   Today : 6228 Yesterday : 5037 Total : 21962280  /  Counter Status   Today : 6021 Yesterday : 4602 Total : 1188744

Edited by JAESOO

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소