RadarURL

조회 수 1882 추천 수 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 927827
1786 유닉스/리눅스 CentOS Network 설정 file JaeSoo 2014.05.26 1155
1785 업무 Reseller(리셀러), Distributor(디스트리뷰터), Vender(벤더), Dealer(딜러) 차이 JaeSoo 2014.05.23 1570
1784 유닉스/리눅스 RHEL 6.5 에서 bmc-watchdog[xxxx]: Log 가 발생되면서 rebooting 되는 문제 JaeSoo 2014.05.22 1692
1783 유닉스/리눅스 RHEL5, 6 Ctrl + Alt + Del 키 막기 file JaeSoo 2014.05.22 1235
1782 유닉스/리눅스 Linux YUM 을 이용하여 보안 업데이트를 진행해 보자 JaeSoo 2014.05.22 1264
1781 유닉스/리눅스 Red Hat RHN 등록이 왜? 안될까? ( RHN connection refused ) JaeSoo 2014.05.22 1125
1780 유닉스/리눅스 RHEL 6.5 Release… JaeSoo 2014.05.22 11671
1779 유닉스/리눅스 sulinux 2.0 + APM + Zend + eaccelerator + nginx + mrtg JaeSoo 2014.05.22 1385
1778 유닉스/리눅스 SULinux 2.0 GUI 버전 - GUI가 편하긴 하구나... file JaeSoo 2014.05.22 1525
1777 유닉스/리눅스 sulinux APMtools 설치 위치 정리 file JaeSoo 2014.05.22 1513
» 유닉스/리눅스 howto: RHEL6 x86_64 + APM + mediawiki + CKEditor + IPA(LDAP) file JaeSoo 2014.05.22 1882
1775 유닉스/리눅스 RedHat 계정 만들기 ( 평가용 서브스크립션 다운로드 ) JaeSoo 2014.05.22 1274
1774 웹 프로그래밍 php 웹사이트에서 파일을 업로드 하는중 100%에서 멈춰버리는 현상 해결 JaeSoo 2014.05.16 2609
1773 응용 프로그래밍 개발자&웹퍼블리셔 운영서버 배포관리는 어떻게 하시고 계신가요? file JaeSoo 2014.05.15 1287
1772 모바일 스마트폰 CPU 성능 비교 및 분석 [엑시노스,스냅드래곤,Omap(오맵),테그라] - 리뉴얼 file JaeSoo 2014.05.15 1726
1771 응용 프로그래밍 버전관리 - 형상관리, 소스세이프, CVS, Subversion(SVN), GIT, mercurial(hg), Perforce JaeSoo 2014.05.15 1755
1770 응용 프로그래밍 빌드를 자동화하라 (Automate the Build) JaeSoo 2014.05.15 1129
1769 응용 프로그래밍 단일화된 소스 저장소를 유지하라. (Maintain a Single Source Repository.) JaeSoo 2014.05.15 1417
1768 응용 프로그래밍 지속적인 통합으로 피처요구사항 빌드하기 (Building a Feature with Continuous Integration) JaeSoo 2014.05.15 1310
1767 응용 프로그래밍 지속적인 통합 (Continuous Integration) file JaeSoo 2014.05.15 1176
Board Pagination Prev 1 ... 30 31 32 33 34 35 36 37 38 39 ... 124 Next
/ 124


즐겨찾기 (가족)

JAESOO's HOMEPAGE


YOUNGAE's HOMEPAGE


장여은 홈페이지


장여희 홈페이지


장여원 홈페이지


즐겨찾기 (업무)

알리카페 홀릭

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

말레이시아 KL Sentral 한국인 GuestHouse


즐겨찾기 (취미)

어드민아이디

유에코 사랑회

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

JServer.kr

제이서버 메타블로그

재수 티스토리


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

재수 강의 홈페이지


한소리


VTMODE.COM


숭실대 인공지능학과


숭실대 통신연구실


베너