ownCloud in VirtualBox

##. ubuntu 16.10 in virtual box, ownCloud 9.1.4 설치 All in One

-. virtual 확장팩 설치

apt install virtualbox-ext-pack

-. 외부에서 접근하는 IP 확인

ip addr show eth0 | enp0s3 inet | awk ‘{ print $2; }’ | sed ‘s/\/.*$//’

> output
10.0.2.15
fe80::a00:27ff:fe1f:7551

-. VirtualBox NAT에 포트포워딩 설정

http [공란] 80 [공란] 80

-. apache2 설치

sudo apt-get update
sudo apt-get install apache2 -y

sudo apache2ctl configtest

> output
AH00558: apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1. Set the ‘ServerName’ directive globally to suppress this message
Syntax OK

-. apache2.conf 편집

sudo apt-get install vim -y (vi에서는 방향키 및 백스페이스 먹통 해결)

sudo vi /etc/apache2/apache2.conf

=============================================================
/apache2.conf (최하단)
————————————————————-
ServerName 10.0.2.15     (domain이 있으면 도메인 명 추가)
————————————————————-

sudo apache2ctl configtest

> output
Syntex OK

-. PHP 설치

sudo apt-get install php libapache2-mod-php php-mcrypt php-mysql -y

-. 기본파일 순위 변경

sudo vi /etc/apache2/mods-enabled/dir.conf

=============================================================
/dir.conf (line : 2)
————————————————————-
DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
————————————————————-

sudo systemctl restart apache2

sudo systemctl status apache2

(inactive 확인)

-. php 확장 라이브러리 설치

sudo apt-get install php-bz2 php-curl php-gd php-imagick php-intl php-mbstring php-xml php-zip php-apcu -y

-. curl 설치

sudo apt-get install curl -y

-. ownCloud 설치환경 설정

sudo curl https://download.owncloud.org/download/repositories/stable/Ubuntu_16.10/Release.key | sudo apt-key add –
echo ‘deb https://download.owncloud.org/download/repositories/stable/Ubuntu_16.10/ /’ | sudo tee /etc/apt/sources.list.d/owncloud.list
sudo apt-get install apt-transport-https -y
sudo apt-get update

-. ownCloud 다운로드 및 설치

sudo apt-get install owncloud -y
sudo systemctl reload apache2

-. Mysql DB 설정 (ubuntu에 mysql설치 안함 : DB는 가상머신 내에 설치하면 속도가(TT) 느림. host 서버에 설치 후 활용 / version 5.5)

(DB 생성 및 사용자 생성 : 편의상 명칭은 다 통일)
use mysql;
create database owncloud9;
insert into user (host, user, password, ssl_cipher, x509_issuer, x509_subject, authentication_string) values (‘%’, ‘owncloud9’, password(‘owncloud9’), ”,  ”, ”, ”);
insert into db (host, db, user, select_priv, insert_priv, update_priv, delete_priv, create_priv, drop_priv, grant_priv, references_priv, index_priv, alter_priv) values (‘%’,’owncloud9′,’owncloud9′, ‘Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’,’Y’ );
flush privileges;

USE owncloud9;
grant all privileges on owncloud9.* to  owncloud9@’%’ identified by ‘owncloud9′ with grant option;
grant all privileges on owncloud9.* to  owncloud9@’localhost’ identified by ‘owncloud9’ with grant option;
flush privileges;

-. VirtuslBox share folder (저장소 마운트)

sudo apt-get install virtualbox-guest-utils -y

(reboot 후 생성됨)
/media/sf_[공유폴더 명칭] 으로 마운트 생성됨.

sudo mkdir /media/[공유폴더 명칭]
sudo mkdir /media/VirtualBox_Share

id www-data
> output
uid=33(www-data) gid=33(www-data) 그룹들=33(www-data)

TEST :
> sudo mount -t vboxsf -o gid=33,uid=33,rw,umask=007 VirtualBox_Share /media/VirtualBox_Share

FIX : (fstab에 등록하려 하였으나, vboxsf 파일 시스템을 fstab가 인식못함. 어마무지한 삽질 후 발견한 사실)
> sudo vi /etc/init.d/mount-vboxsf

=============================================================
/mount-vboxsf (신규 파일 생성)
————————————————————-
#!/bin/bash

/bin/mount -t vboxsf -o gid=33,uid=33,rw,umask=007 VirtualBox_Share /media/VirtualBox_Share

exit 0
————————————————————-

runlevel
> output
N 5  (해당 level에 맞는 re?.d에 만들어야 함)

sudo ln -s /etc/init.d/mount-vboxsf /etc/rc5.d/S02mount-vboxsf

-. apache2 Http root 경로 변경 및 URL 설정

sudo vi /etc/apache2/sites-available/000-default.conf

=============================================================
/000-default.conf (line : 12)
————————————————————-
DocumentRoot /var/www/owncloud
————————————————————-

service apache2 restart

**. owncloud http로 접속 후 환경설정. (관리자, DB, 설정 등)

 

sudo vi /var/www/owncloud/config/config.php

=============================================================
/config.php (/owncloud 삭제) (line : 12)
————————————————————-
‘overwrite.cli.url’ => ‘http://totoli.us.to’,
————————————————————-

-. ownCloud Data 폴더 위치 수정

sudo systemctl stop apache2
sudo mv /var/www/owncloud/data /media/VirtualBox_Share/owncloud_data

sudo vi /var/www/owncloud/config/config.php

=============================================================
/config.php (line : 11)
————————————————————-
‘datadirectory’ => ‘/media/VirtualBox_Share/owncloud_data’,
————————————————————-

sudo systemctl start apache2

-. 대용량 파일 업로드 설정

sudo vi /var/www/owncloud/.htaccess

=============================================================
/.htaccess (line : 41 ~ 43)
————————————————————-
(php5도 있기는 하지만 해당하는 버젼만 수정해도 무방)
<IfModule mod_php7.c>
php_value upload_max_filesize 10G
php_value post_max_size 10G
————————————————————-

sudo vi /etc/php/7.0/apache2/php.ini

=============================================================
/php.ini (vi ‘/’ 으로 찾으며)
————————————————————-
upload_max_filesize = 10G
max_file_uploads = 1000
max_execution_time = 0
max_input_time = -1
memory_limit = 256M
output_buffering = 0
post_max_size = 10G
default_socket_timeout = 300
————————————————————-

sudo vi /var/www/owncloud/config/config.php

=============================================================
/config.php (원하는 곳에 추가)
————————————————————-
‘timeout’ => ‘3600’,
————————————————————-

sudo service apache2 restart

-. owncloud 보안경고 해제

message
> No memory cache has been configured. To enhance your performance please configure a memcache if available. Further information can be found in our documentation.

sudo vi /var/www/owncloud/config/config.php

기본 APCu 캐시 사용
=============================================================
/config.php (원하는 곳에 추가)
————————————————————-
‘memcache.local’ => ‘\\OC\\Memcache\\APCu’,
————————————————————-

or

**. Redis-Server 사용할 시엔 다음 내용으로 변경
=============================================================
/config.php (원하는 곳에 추가)
————————————————————-
‘memcache.local’ => ‘\\OC\\Memcache\\Redis’,
‘filelocking.enabled’ => ‘true’,
‘memcache.distributed’ => ‘\\OC\\Memcache\\Redis’,
‘memcache.locking’ => ‘\\OC\\Memcache\\Redis’,
‘redis’ =>
array (
‘host’ => ‘localhost’,
‘port’ => 6379,
‘timeout’ => 0,
‘dbindex’ => 0,
),
————————————————————-

sudo service apache2 restart

-. EUC-KR 파일 UTF-8로 변환 처리 활성화

sudo vi /var/www/owncloud/apps/files_texteditor/controller/filehandlingcontroller.php

=============================================================
/filehandlingcontroller.php (line : 92, 95)
————————————————————-
$encoding = mb_detect_encoding($fileContents . “a”, “UTF-8, EUC-KR, WINDOWS-1252, ISO-8859-15, ISO-8859-1, ASCII”, true);
if ($encoding == “”) {
// set default encoding if it couldn’t be detected
$encoding = ‘EUC-KR’;
}
————————————————————-

-. 한글 TXT imagettftext preview 인코딩 수정

cd /var/www/owncloud/core/fonts
OpenSans-Regular.ttf 파일을 한글지원되는 TTF로 변경 (파일명은 기존 OpenSans-Regular.ttf 명으로 저장)

(malgun.ttf 적용 시 상기 폴더에 malgun.ttf 복사 후 하기 편집)

sudo vi /var/www/owncloud/lib/private/Preview/TXT.php

=============================================================
/TXT.php (line : 66) OpenSans-Regular -> malgun
————————————————————-
$fontFile .= ‘/fonts/malgun.ttf’; (이 라인의 폰트 명을 상기 경로에 복사한 한글 폰트명으로 변경)
————————————————————-

-. top 메뉴 server 통합 검색 입력 글자 수 제한 2자로 변경

sudo vi /var/www/owncloud/core/search/js/search.js

=============================================================
/search.js (line : 325)
————————————————————-
if (query.length > 1) {
————————————————————-

-. Url 문자열에 index.php 숨기기

a2enmod rewrite (apache2 mod_rewrite 구동 확인)
> output
Module rewrite already enabled (ok)

a2enmod env (apache2 mod_env 구동확인)
> output
Module env already enabled (ok)

*. 상기 mod_rewrite and mod_env 구동확인 결과 구동 이력 없으면 apache2 재설정 해야함.

sudo vi /etc/apache2/sites-enabled/000-default.conf

=============================================================
//sites-enabled/000-default.conf (line : 13)
————————————————————-
DocumentRoot /var/www/owncloud (이줄 하단에)
<Directory /var/www/owncloud>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
————————————————————-

sudo vi /var/www/owncloud/config/config.php

=============================================================
/config.php (line : 18)
————————————————————-
‘htaccess.RewriteBase’ => ‘/’,
————————————————————-

sudo service apache2 restart

sudo -u www-data php /var/www/owncloud/occ maintenance:update:htaccess

-. ownCloud Server Tuning

crontab -u www-data -e

*/15  *  *  *  * php -f /var/www/owncloud/cron.php

구동 코어 지정하려면
> apt-get install taskset
> */15  *  *  *  * taskset 02 php -f /var/www/owncloud/cron.php

(참고 : 크론 결과 모니터링 tail -F /var/log/syslog )

sudo /etc/init.d/cron restart
> output
[ ok ] Restarting cron (via systemctl): cron.service.

ps ax | grep redis
> output
Ssl    0:05 /usr/bin/redis-server 127.0.0.1:6379 (ok)

*. 상기 검사 후 redis-server 없으면 설치
sudo apt-get install redis-server php-redis

sudo vi /var/www/owncloud/config/config.php

=============================================================
/config.php (line : 13)
————————————————————-
‘filelocking.enabled’ => true,
‘memcache.locking’ => ‘\OC\Memcache\Redis’,
‘redis’ =>
array (
‘host’ => ‘localhost’,
‘port’ => 6379,
‘timeout’ => 0.0,
),
‘asset-pipeline.enabled’ => true,      <– 이 설정은 노트 앱 쓰려면 설정 X
————————————————————-

sudo service apache2 restart

 

-. ETC
> 한글화 수정
vi /var/www/owncloud/core/l10n/ko.js

100     “seconds ago” : “직전”,
149     “Password” : “Password”,
217     “The share will expire on %s.” : “이 공유는 %s 까지 유효합니다.”,
255 “Hey there,<br><br>just letting you know that %s shared <strong>%s</strong> with you.<br><a href=\”%s\”>View it!</a><br><br>” : “안녕하세요,<br><br>%s 님이 <strong>%s</strong>을(를) 공유하였음을 알려 드립니다.<br><br>아래 링크가 열리지 않으면 공유링크 상단에서 마우스 우클릭 후 <strong>새 창(탭)에서 열기</strong>를 선택하세요.<br><br><br>▷▷▷ <a href=\”%s\”>공유 링크 열기</a> ◁◁◁<br><br><br>”,
266     “Alternative Logins” : “- 공개 가입 -“,
vi /var/www/owncloud/core/l10n/ko.json

98 “seconds ago” : “직전”,
147     “Password” : “Password”,
215     “The share will expire on %s.” : “이 공유는 %s 까지 유효합니다.”,
253 “Hey there,<br><br>just letting you know that %s shared <strong>%s</strong> with you.<br><a href=\”%s\”>View it!</a><br><br>” : “안녕하세요,<br><br>%s 님이 <strong>%s</strong>을(를) 공유하였음을 알려 드립니다.<br><br>아래 링크가 열리지 않으면 공유링크 상단에서 마우스 우클릭 후 <strong>새 창(탭)에서 열기</strong>를 선택하세요.<br><br><br>▷▷▷ <a href=\”%s\”>공유 링크 열기</a> ◁◁◁<br><br><br>”,
264     “Alternative Logins” : “- 공개 가입 -“,

vi /var/www/owncloud/lib/l10n/ko.js

31     “seconds ago” : “직전”,
112     “web services under your control” : “C. 2016 by totoli. All rights reserved.”,

vi /var/www/owncloud/lib/l10n/ko.json

29     “seconds ago” : “직전”,
110     “web services under your control” : “C. 2016 by totoli. All rights reserved.”,

> Site 명칭 수정
vi /var/www/owncloud/lib/private/legacy/defaults.php

$this->defaultEntity = ‘totoliCloud’; /* e.g. company name, used for footers and copyright notices */
$this->defaultName = ‘totoliCloud’; /* short name, used when referring to the software */
$this->defaultTitle = ‘totoliCloud’; /* can be a longer name, for titles */
$this->defaultBaseUrl = ‘http://totoli.us.to’;

> 메일 이미지
cd /var/www/owncloud/core/img
rm logo-mail.gif
cp logo-mail.gif_bk2 logo-mail.gif

> 로그인 이미지
cd /var/www/owncloud/core/img
rm background.jpg
cp background.jpg_bk4 background.jpg

-. allow public page group specific apps

sudo vi /var/www/owncloud/lib/private/AppFramework/DependencyInjection/DIContainer.php

=============================================================
/DIContainer.php (line : 294)
————————————————————-
$this->registerService(IDateTimeFormatter::class, function () {
return $this->getServer()->getDateTimeFormatter();
});

————————————————————-

=============================================================
/DIContainer.php (line : 347) “—->” 마크 붙어있는 두 줄 삽입
————————————————————-
$app->getServer()->getLogger(),
—-> $app->getServer()->getAppManager(),
—-> $app->getServer()->getAppConfig(),
$c[‘AppName’],

————————————————————-

sudo vi /var/www/owncloud/lib/private/AppFramework/Middleware/Security/SecurityMiddleware.php

=============================================================
/SecurityMiddleware.php (line : 47)
————————————————————-
use OCP\App\IAppManager;
use OCP\IAppConfig;

————————————————————-

=============================================================
/SecurityMiddleware.php (line : 72)
————————————————————-
/** @var IAppManager */
private $appManager;
/** @var IAppConfig */
private $appConfig;

————————————————————-

=============================================================
/SecurityMiddleware.php (line : 89) “—->” 마크 붙어있는 두 줄 삽입
————————————————————-
* @param ILogger $logger
—->  * @param IAppManager
—->  * @param IConfig
* @param string $appName

————————————————————-

=============================================================
/SecurityMiddleware.php (line : 101) “—->” 마크 붙어있는 두 줄 삽입
————————————————————-
ILogger $logger,
—-> IAppManager $appManager,
—-> IAppConfig $appConfig,
$appName,

————————————————————-

=============================================================
/SecurityMiddleware.php (line : 112) “—->” 마크 붙어있는 두 줄 삽입
————————————————————-
$this->urlGenerator = $urlGenerator;
—-> $this->appManager = $appManager;
—-> $this->appConfig = $appConfig;
$this->logger = $logger;

————————————————————-
=============================================================
/SecurityMiddleware.php (line : 157) 블럭 통으로 교체
————————————————————-

// ** AS-IS **

/**
* FIXME: Use DI once available
* Checks if app is enabled (also includes a check whether user is allowed to access the resource)
* The getAppPath() check is here since components such as settings also use the AppFramework and
* therefore won’t pass this check.
*/
if(\OC_App::getAppPath($this->appName) !== false && !\OC_App::isEnabled($this->appName)) {
throw new AppNotEnabledException();
}

————————————————————-

//** TO-BE **

/**
* If public route, check it is enabled for someone,
* else check it is enabled for current user
*/
if($isPublicPage) {
if($this->appConfig->getValue($this->appName, ‘enabed’) === ‘no’) {
throw new AppNotEnabledException();
}
} else if(\OC_App::getAppPath($this->appName) !== false && !$this->appManager->isEnabledForUser($this->appName)) {
/**
* Checks if app is enabled (also includes a check whether user is allowed to access the resource)
* The getAppPath() check is here since components such as settings also use the AppFramework and
* therefore won’t pass this check.
*/
throw new AppNotEnabledException();
}

————————————————————-

-. upgrade lock status

sudo chown www-data:www-data /var/www/owncloud -R

sudo vi /var/www/owncloud/config/config.php

=============================================================
/config.php (line : 36)
————————————————————-
maintenance => flase
————————————————————-

sudo service apache2 restart

===========================================================================================================
-. option. phpredis 설치

> redis-server 설치
sudo apt-get install redis-server -y

> php에 redis 서버 연결
wget https://github.com/nicolasff/phpredis/zipball/master -O phpredis.zip

unzip phpredis.zip

&, 압축 풀고 이름 바꿔서 /etc/php/7.0/phpredis 로 복사

apt install php7.0-dev

cd /etc/php/7.0/phpredis/

phpize

./configure –with-php-config=/usr/local/php/bin/php-config

./configure

make
make install

vi /etc/php/7.0/apache2/php.ini
=============================================================
/php.ini (lastline)
————————————————————-
[redis]
extension=/usr/lib/php/20151012/redis.so
session.save_handler = redis
session.save_path = “tcp://112.220.221.118:6377”
————————————————————-

sudo service apache2 restart

===========================================================================================================
-. option. onlyoffice 설치

echo “deb http://archive.ubuntu.com/ubuntu precise main universe multiverse” | sudo tee -a /etc/apt/sources.list

curl -sL https://deb.nodesource.com/setup_8.x | sudo bash –
sudo apt-get install -y nodejs

sudo apt-get install postgresql -y

sudo -u postgres psql -c “CREATE DATABASE onlyoffice;”
sudo -u postgres psql -c “CREATE USER onlyoffice WITH password ‘onlyoffice’;”
sudo -u postgres psql -c “GRANT ALL privileges ON DATABASE onlyoffice TO onlyoffice;”

sudo apt-get install redis-server -y

sudo apt-get install rabbitmq-server -y

sudo apt-key adv –keyserver hkp://keyserver.ubuntu.com:80 –recv-keys CB2DE8E5

sudo echo “deb http://download.onlyoffice.com/repo/debian squeeze main” | sudo tee /etc/apt/sources.list.d/onlyoffice.list

sudo apt-get update

sudo service apache2 stop (nginx 기본 설치 시 아파치 80이 살아있으면 오류남)

sudo apt-get install nginx-extras -y

**. 수시 업그레이드 시 재활용
sudo apt-get install onlyoffice-documentserver -y

postgresql 대화창에 패스워드 입력 => onlyoffice

# onlyoffice apps 추가 (이 설정은 owncloud 사용시 만 적용)

apt-get install git -y
cd /var/www/owncloud/apps
git clone https://github.com/ONLYOFFICE/onlyoffice-owncloud.git onlyoffice

ownCloud admin -> app + -> Productivity -> onlyoffice 사용함 선택

ownCloud admin -> 관리자 -> onlyoffice 주소 설정 : 도메인 또는 포트를 포함한 DOMAIN 주소만.
ex : totoli.us.to  (nginx port : 80)

# onlyoffice font 변경

(필요없는 ubuntu 글꼴 다 지움)
rm /usr/share/fonts/truetype/* -R

(onlyoffice 기본 폰트 / 모두 지워도 상관 없음)
rm /var/www/onlyoffice/documentserver/core-fonts -R

(필요한 폰트 복사 후)
cp /home/totoli/truetype /usr/share/fonts/truetype -R

/usr/bin/documentserver-generate-allfonts.sh

(IE 케시 삭제 후 적용 확인)

# 맞춤법 사전 추가

cd /var/www/onlyoffice/documentserver/server/SpellChecker/
(필요없는 사전 삭제) ko_KR | en_US 두개만 일단.

rm dictionaries/ -R (사전은 지우기 전에 최신 폴더 /home/totoli/dictionaries/로 복사 후)

cp /home/totoli/dictionaries/ ./ -R

chmod 755 ./dictionaries/ -R
chown onlyoffice:onlyoffice ./dictionaries/  -R

supervisorctl restart onlyoffice-documentserver:spellchecker

===========================================================================================================
# apache solr 설치

-. jre 설치
apt-get install software-properties-common
add-apt-repository ppa:webupd8team/java
apt-get update
apt-get install oracle-java8-installer -y
apt-get install oracle-java8-set-default -y

java -version

cat >> /etc/environment <<EOL
JAVA_HOME=/usr/lib/jvm/java-8-oracle
JRE_HOME=/usr/lib/jvm/java-8-oracle/jre
EOL

# solr 설치 준비

mkdir ~/solr_install/
cd ~/solr_install/

-. solr 다운로드
wget http://archive.apache.org/dist/lucene/solr/6.6.5/solr-6.6.5.tgz
tar -zxvf solr-6.6.5.tgz

-. solr 설치
./solr-6.6.5/bin/install_solr_service.sh solr-6.6.5.tgz

> solr.service active 확인 후 Ctrl-z

-. ocr 설치
apt-get install tesseract-ocr -y
apt-get install tesseract-ocr-kor -y

-. ocr 언어 수정
apt-get install zip unzip -y

dpkg -l | grep tesseract | awk -Focr- ‘{print $2}’ | awk ‘{print $1}’ | grep -v ^$
설치된 언어 확인 “kor” 있는지

ll /opt/solr/contrib/extraction/lib/tika-parsers-*

vim /opt/solr/contrib/extraction/lib/tika-parsers-1.18.jar

패턴 찾기 : /TesseractOCRConfig.properties (line : 307) enter 치고 열기

=============================================================
/TesseractOCRConfig.properties (line : 17)
————————————————————-
language=eng => language=kor+eng
————————————————————-
-. 검색어 추천 및 OCR 활성화 설정
> owncloud 서버 접속 후 하단 1줄
cp /var/www/owncloud/apps/nextant/config/nextant_solrconfig.xml /media/sf_desktop/

mkdir /opt/solr/nextant_conf

cp /media/sf_Desktop/nextant_solrconfig.xml /opt/solr/nextant_conf

cd /opt/solr/nextant_conf

chmod 644 nextant_solrconfig.xml

vi /opt/solr-6.6.5/server/solr/configsets/data_driven_schema_configs/conf/solrconfig.xml
또는
vi /opt/solr-7.5.0/server/solr/configsets/_default/conf/solrconfig.xml

=============================================================
/solrconfig.xml (line : top, bottom) 최상단, 중간, 최하단 양쪽 추가
————————————————————-
<?xml version=”1.0″ encoding=”UTF-8″ ?>

<!DOCTYPE config [
<!ENTITY nextant_component SYSTEM “/opt/solr/nextant_conf/nextant_solrconfig.xml”>
]>



<requestHandler name=”/update/extract” startup=”lazy” class=”solr.extraction.ExtractingRequestHandler” >  (/ 패턴으로 ExtractingRequestHandler 찾아가서)
<lst name=”defaults”>
<str name=”lowernames”>true</str>
<str name=”uprefix”>ignored_</str>  (<— 이줄 추가)
<str name=”captureAttr”>true</str>  (<— 이줄 추가 : 이 두줄 추가해야 이미지, 이미지형 PDF에서 ORC 작동)


&nextant_component;

</config>
————————————————————-

vi /etc/default/solr.in.sh

=============================================================
/solr.in.sh (line : ) 최하단에 추가
————————————————————-
SOLR_JAVA_HOME=”/usr/lib/jvm/java-8-oracle”
SOLR_JAVA_MEM=”-Xms1024m -Xmx4096m”
SOLR_OPTS=”$SOLR_OPTS -Dsolr.allow.unsafe.resourceloading=true”
————————————————————-

service solr restart

-. 코어 생성

* 신규 컬렉션 코어 생성
sudo -u solr /opt/solr/bin/solr create -c nextant

* 삭제 할 때는
sudo -u solr /opt/solr/bin/solr delete -c nextant<– 코어를 지우면 하단의 설정 다 지워짐.

* 색인된 내용만 초기화 (코어는 그대로 둠)
curl “http://112.220.221.118:8983/solr/nextant/update?commit=true” -H “Content-Type: text/xml” –data-binary ‘<delete><query>*:*</query></delete>’

-. 접근 가능 IP 설정

vi /opt/solr/server/etc/jetty-http.xml

=============================================================
/jetty-http.xml (line : 36) default=”10.0.2.15″ 추가
————————————————————-
<Set name=”host”><Property name=”jetty.host” default=”10.0.2.15″ /></Set>
————————————————————-

vi /var/solr/data/nextant/conf/managed-schema

=============================================================
/managed-schema (line : 88) type=”string” => type=”text_general”
————————————————————-
<dynamicField name=”nextant_attr_*” type=”text_general” multiValued=”true” indexed=”true” stored=”true”/>
————————————————————-
**. 만약 occ nextant:check –fix 로 설정파일 교청 했다면 다시 상단 내용 고처줘야 함.
service solr restart

EOF;