...
コード ブロック | ||
---|---|---|
| ||
sudo yum -y install firewalld sudo systemctl enable firewalld sudo systemctl start firewalld sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --reload |
Middleware Installation
Web Server
...
and PHP
WEKO utilize Groonga and Mroonga for the full text search engine.
Groonga: http://groonga.org/, Mroonga: http://mroonga.org/
Following instruction refers http://mroonga.org/docs/install/centos.html#centos-7-with-the-official-mariadb-package
Install Apache and PHP.
コード ブロック | ||
---|---|---|
| ||
sudo | ||
コード ブロック | ||
| ||
sudo yum install -y httpd sudo systemctl enable httpd sudo systemctl start httpd sudo yum install -y http://packagesrpms.groongafamillecollet.orgcom/centosenterprise/groongaremi-release-1.1.0-1.noarch7.rpm sudo yum makecache sudo yum install -y mariadb-server sudo systemctl enable mariadb sudo systemctl start mariadb sudo yum install -y mariadb-mroonga sudo yum install -y groonga-tokenizer-mecab sudo yum install -y --enablerepo=remi-php56 php php-mbstring php-gd php-xml php-mysql |
Library for extract the text from PDF file.
コード ブロック | ||
---|---|---|
| ||
sudo yum install -y poppler-utils |
Other Middleware
Library for making PDF thumbnail
コード ブロック | ||
---|---|---|
| ||
sudo yum install -y ImageMagick |
Add package repository
mysqlnd |
MariaDB and Full Text Search Engine
WEKO utilize Groonga and Mroonga for the full text search engine.
Groonga: http://groonga.org/, Mroonga: http://mroonga.org/
Following instruction refers http://mroonga.org/docs/install/centos.html#centos-7-with-the-official-mariadb-package
MariaDB a superset Mroonga from version 10 as a plugin.
Create /etc/yum.repos.d/mariadb.repo by editor.
Set the MariaDB installation destination.
コード ブロック | ||
---|---|---|
| ||
sudo# yum -y install epel-release sudo rpm -Uvh MariaDB 10.1 CentOS repository list - created 2016-07-15 04:53 UTC # http://lidownloads.nuxmariadb.roorg/downloadmariadb/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm |
Library for making PDF cover page.(PDFTK is unavailable for CentOS7, please skip this section. WEKO is looking for alternative method)
コード ブロック | ||
---|---|---|
| ||
|
Library for showing multimedia contents.
repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1 |
Install MariaDB and Mroonga.
コード ブロック | ||
---|---|---|
| ||
sudo yum makecache
| ||
コード ブロック | ||
| ||
sudo yum install -y ffmpeg |
Middleware Setup and Configuration
Database
Setup root password
コード ブロック | ||
---|---|---|
| ||
/usr/bin/mysqladmin -u root password 'root-no-password'
|
Delete anonymous user from the initial database.
コード ブロック | ||
---|---|---|
| ||
mysql -u root -proot-no-password
use mysql
delete from user where user='';
|
Create database for WEKO(NetCommon) installation
コード ブロック | ||
---|---|---|
| ||
create database nc2db default character set UTF8;
|
...
MariaDB-client MariaDB-server
sudo systemctl enable mariadb
sudo systemctl start mariadb
mysql -u root
MariaDB [(none)]> INSTALL PLUGIN mroonga SONAME 'ha_mroonga.so';
MariaDB [(none)]> CREATE FUNCTION last_insert_grn_id RETURNS INTEGER SONAME 'ha_mroonga.so';
MariaDB [(none)]> CREATE FUNCTION mroonga_snippet RETURNS STRING SONAME 'ha_mroonga.so';
MariaDB [(none)]> CREATE FUNCTION mroonga_command RETURNS STRING SONAME 'ha_mroonga.so';
MariaDB [(none)]> CREATE FUNCTION mroonga_escape RETURNS STRING SONAME 'ha_mroonga.so';
MariaDB [(none)]> exit |
Other Middleware
Library for extract the text from PDF file.
コード ブロック | ||
---|---|---|
| ||
grantsudo allyum on nc2db.* to nc2user@localhost identified by 'nc2pass'; |
PHP
Open /etc/php.ini by editor.
Modify memory related configuration. Each size have to have the relationship as follows.
upload_max_filesize < post_max_size < memory_limit
For example,
コード ブロック | ||
---|---|---|
| ||
memory_limit = 128M;
post_max_size = 64M;
upload_max_filesize = 32M; |
Configure for UTF-8 character code .
コード ブロック | ||
---|---|---|
| ||
[mbstring]
mbstring.language = neutral
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = pass
mbstring.encoding_translation = Off |
install -y poppler-utils |
Library for making PDF thumbnail
コード ブロック | ||
---|---|---|
| ||
sudo yum install -y ImageMagick |
Library for analyzing the search keyword from a external search engine.
コード ブロック | ||
---|---|---|
| ||
sudo yum -y install epel-release
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
sudo yum -y install mecab |
Library for showing multimedia contents.You also need to specify the timezone in the /etc/php.ini
コード ブロック | ||
---|---|---|
| ||
[Date]
; Defines the default timezone used by the date functions
; http://www.php.net/manual/en/datetime.configuration.php#ini.date.timezone
date.timezone = "Asia/Tokyo" | ||
sudo yum install -y ffmpeg |
Library for extracting the Word text.
Save as "wv-1.2.4.tar.gz" to get the source code from https://sourceforge.net/projects/wvware/files/wv/1.2.4/.
wv-1.2.4.tar.gzAfter modifying the configuration, httpd have to be restarted.
コード ブロック | ||
---|---|---|
| ||
sudo systemctlyum restart httpd |
NetCommons2
Before Install Preparation
Install wget first.
コード ブロック | ||
---|---|---|
| ||
sudo yum install -y wget |
Download the latest NetCommons core package (Following command download version 2.4.2.1).
コード ブロック | ||
---|---|---|
| ||
wget -c "http://www.netcommons.org/%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89/%E3%82%B3%E3%82%A2%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8/?action=cabinet_action_main_download&block_id=93&room_id=1&cabinet_id=1&file_id=2811&upload_id=6210" -O netcommons-2.4.2.1.tar.gz |
Uncompress the downloaded file.
コード ブロック | ||
---|---|---|
| ||
tar zxvf netcommons-2.4.2.1.tar.gz |
-y install glib2-devel libgsf libgsf-devel gcc gcc-c++ elinks
sudo tar -zxvf wv-1.2.4.tar.gz
cd wv-1.2.4/
sudo ./configure
sudo make
sudo make install |
Library for extracting the Excel and Power Point text.
コード ブロック | ||
---|---|---|
| ||
sudo wget http://repo.iotti.biz/CentOS/6/x86_64/xlhtml-0.5-17.el6.lux.1.x86_64.rpm
sudo yum -y localinstall xlhtml-0.5-17.el6.lux.1.x86_64.rpm |
Library for making PDF cover pageCopy it to the web application directory.
コード ブロック | ||
---|---|---|
| ||
sudo cp -rp NetCommons-2.4.2.1/html /var/www/html/nc2 |
Change file owner to be able to access by web server
コード ブロック | ||
---|---|---|
| ||
cd /var/www/html/nc2
sudo chown -R apache:apache * |
If you would like to access to NetCommons as a top page, you should modify /etc/httpd/conf/httpd.conf as follows.
wget https://copr.fedorainfracloud.org/coprs/robert/gcj/repo/epel-7/robert-gcj-epel-7.repo -P /etc/yum.repos.d
sudo wget https://copr.fedorainfracloud.org/coprs/robert/pdftk/repo/epel-7/robert-pdftk-epel-7.repo -P /etc/yum.repos.d
sudo yum install -y pdftk |
Middleware Setup and Configuration
Database
Setup root password
コード ブロック | ||
---|---|---|
| ||
DocumentRoot "/var/www/html/nc2/htdocs" |
...
This is not a requirement, however, if you add the following expression in the httpd.conf, you can utilize the URL-rewrite option in OAI-PMH Configuration.
Please refer to User Manual (3.2.9.3.3 OAI-PMH Configuration) to know how to utilize this .htaccess configuration.
コード ブロック | ||
---|---|---|
| ||
<Directory "/var/www/html/nc2/htdocs">
AllowOverride All
</Directory> |
...
sudo systemctl restart mariadb
/usr/bin/mysqladmin -u root password 'root-no-password'
|
Delete anonymous user from the initial database.
コード ブロック | ||
---|---|---|
| ||
mysql -u root -proot-no-password
MariaDB [(none)]> use mysql
MariaDB [mysql]> delete from user where user='';
|
Create database for WEKO(NetCommon) installation
コード ブロック | ||
---|---|---|
| ||
sudo systemctl restart httpd |
Installation
Access to the site you will install the NC2 by browser. You can see the installation page like this.
In this page, select English anyway from the pull-down menu.
Press Next button.
This step requires to input general configuration parameters like this.
Paramter | Value |
---|---|
Site Name | "as you want" |
Database | mysqli |
Database Hostname | localhost |
Database Username | nc2user |
Database Password | nc2pass |
Database Name | nc2db |
Table Prefix | nc2 |
No | |
NetCommons Virtual Path | "your server address" |
Just need to confirm your parameters. Press Next if it is OK.
Green signal means there is no problem with your installation process so far, then Next.
Here is also then press Next.
Here is also then press Next.
Here is also then press Next.
Here is also then press Next.
In this page, you will create an administrator account.
Press Next button, if there is no problem.
Press Next button, if there is no problem.
Congratulations! Installation of NetCommons2 has been completed.
WEKO
Checkout WEKO module
In order to download the latest WEKO module from the source code repository, install the svn first
コード ブロック | ||
---|---|---|
| ||
sudo yum install -y subversion |
Checkout multilingual WEKO from the SVN site, then copy it to the NC2 module directory.
The current instruction is to utilize the trunk source code but we will prepare the stable one soon.
コード ブロック | ||
---|---|---|
| ||
svn co http://forge.at.nii.ac.jp/svn/nc/repository/trunk repository
sudo cp -rp repository /var/www/html/nc2/webapp/modules/ |
Install WEKO module
Login to the NC2 and click Control Panel in the header menu.
Click the "Module Manager" icon, then you can find WEKO in the "Modules not yet installed" tab.
Let's click "Install" link which located right hand side of WEKO module name.
If you can find the word "Succesfully installed." at the end of the install log, congratulations!
Installation WEKO into the NC2 has been completed.
Customization for Multilingual
Only English, Chinese and Japanese are available by the original NC2. Therefore, we need to apply patch for more multilingual function. First you need to checkout the patch and just copy it to the NC2 application directory.
コード ブロック | ||
---|---|---|
| ||
svn co http://forge.at.nii.ac.jp/svn/nc/nc2multilang/trunk nc2multilang
cd nc2multilang
sudo cp -rp webapp /var/www/html/nc2/ |
MySQL DB also have to be modify for this customization.
In this SQL file database prefix for NC2 is assumed as "nc2" as has been instructed previously.
If you apply different prefix, please modify SQL file appropriately.
コード ブロック | ||
---|---|---|
| ||
mysql -u nc2user -pnc2pass
mysql> use nc2db
mysql> source AddLanguageForNC2SQL.sql |
Completed!
Show WEKO Block
Go to the NC2 top page and click "Setting mode on" link in the header.
After switching to the Setting Mode, you can select WEKO module in the drop down menu.
Now you paste WEKO module on the top page. Here is the control panel page of WEKO.
In order to show the language select function, please click the "management" tab.
Setting up for the External Commands
In the [Management] => [Server Setting] tab, you can find "Server Environment" menu.
Show WEKO Language Selection Box
In the [Management] => [Display Setting] tab, you can find "language setting" menu.
In this menu, that is, [language setting] => [select language setting], please select "Display" (default is "Hide") from the drop down list.
Then click "commit" button at the bottom of the page.
You can exit from the control panel by clicking "Quit" link at the right hand side of the WEKO block header.
For multilingual, web page for each language have to be prepared by the following procedure.
1. As same as showing the WEKO block, go to Setting Mode and show language and menu module.
2. In the language module, select the language which can to be selected in your page.
3. After selecting an language, create a new page under the public space by using the menu module.
4. In the page created in 2, show WEKO block.
5. Same procedure have to be repeated for other language.
# This file controls the state of SELinux on the system.# SELINUX= can take one of these three values:# enforcing - SELinux security policy is enforced.# permissive - SELinux prints warnings instead of enforcing.# disabled - No SELinux policy is loaded.SELINUX=Permissive# SELINUXTYPE= can take one of these two values:# targeted - Targeted processes are protected,# mls - Multi Level Security protection.SELINUXTYPE=targeted
sudo yum install mysql-server |
WEKO utilize
sudo systemctl enable httpd
...
language | text |
---|
...
MariaDB [mysql]> create database nc2db default character set UTF8;
|
Create an database user and assign the privilege to the previously created db.
コード ブロック | ||
---|---|---|
| ||
MariaDB [mysql]> grant all on nc2db.* to nc2user@localhost identified by 'nc2pass'; |
PHP
Open /etc/php.ini by editor.
Modify memory related configuration. Each size have to have the relationship as follows.
upload_max_filesize < post_max_size < memory_limit
For example,
コード ブロック | ||
---|---|---|
| ||
memory_limit = 1024M;
post_max_size = 64M;
upload_max_filesize = 32M; |
Configure for UTF-8 character code .
コード ブロック | ||
---|---|---|
| ||
[mbstring]
mbstring.language = neutral
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = pass
mbstring.encoding_translation = Off |
You also need to specify the timezone in the /etc/php.ini
コード ブロック | ||
---|---|---|
| ||
[Date]
; Defines the default timezone used by the date functions
; http://www.php.net/manual/en/datetime.configuration.php#ini.date.timezone
date.timezone = "Asia/Tokyo" |
NetCommons2
Before Install Preparation
Install wget first.
コード ブロック | ||
---|---|---|
| ||
sudo yum install -y wget |
Download the latest NetCommons core package (Following command download version 2.4.2.1).
コード ブロック | ||
---|---|---|
| ||
wget -c "http://www.netcommons.org/%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89/%E3%82%B3%E3%82%A2%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8/?action=cabinet_action_main_download&block_id=93&room_id=1&cabinet_id=1&file_id=2811&upload_id=6210" -O netcommons-2.4.2.1.tar.gz |
Uncompress the downloaded file.
コード ブロック | ||
---|---|---|
| ||
tar zxvf netcommons-2.4.2.1.tar.gz |
Copy it to the web application directory.
コード ブロック | ||
---|---|---|
| ||
sudo cp -rp NetCommons-2.4.2.1/html /var/www/html/nc2 |
Change file owner to be able to access by web server
アンカー | ||||
---|---|---|---|---|
|
コード ブロック | ||
---|---|---|
| ||
sudo chown -R apache:apache /var/www/html/nc2 |
If you would like to access to NetCommons as a top page, you should modify /etc/httpd/conf/httpd.conf as follows.
コード ブロック | ||
---|---|---|
| ||
DocumentRoot "/var/www/html/nc2/htdocs" |
アンカー | ||||
---|---|---|---|---|
|
This is not a requirement, however, if you add the following expression in the httpd.conf, you can utilize the URL-rewrite option in OAI-PMH Configuration.
Please refer to User Manual (3.2.9.3.3 OAI-PMH Configuration) to know how to utilize this .htaccess configuration.
コード ブロック | ||
---|---|---|
| ||
<Directory "/var/www/html/nc2/htdocs">
AllowOverride All
</Directory> |
Then restart the httpd
コード ブロック | ||
---|---|---|
| ||
sudo systemctl restart httpd |
Installation
Access to the site you will install the NC2 by browser. You can see the installation page like this.
In this page, select English anyway from the pull-down menu.
Press Next button.
This step requires to input general configuration parameters like this.
Paramter | Value |
---|---|
Site Name | "as you want" |
Database | mysqli |
Database Hostname | localhost |
Database Username | nc2user |
Database Password | nc2pass |
Database Name | nc2db |
Table Prefix | nc2 |
No | |
NetCommons Virtual Path | "your server address" |
Just need to confirm your parameters. Press Next if it is OK.
Green signal means there is no problem with your installation process so far, then Next.
Here is also then press Next.
Here is also then press Next.
Here is also then press Next.
Here is also then press Next.
In this page, you will create an administrator account.
Press Next button, if there is no problem.
Press Next button, if there is no problem.
Congratulations! Installation of NetCommons2 has been completed.
WEKO
Download WEKO module
Download the latest stable WEKO from the code repository.
コード ブロック | ||
---|---|---|
| ||
wget -O weko.tar.gz https://bitbucket.org/niijp/weko/get/master.tar.gz |
Download multilingual WEKO from the code repository as well, then copy it to the NC2 module directory.
コード ブロック | ||
---|---|---|
| ||
tar zxvf weko.tar.gz
mv niijp-weko-[commit number] repository
sudo cp -rp repository /var/www/html/nc2/webapp/modules/
sudo chown -R apache:apache /var/www/html/nc2/webapp/modules/repository |
Install WEKO module
Login to the NC2 and click Control Panel in the header menu.
Click the "Module Manager" icon, then you can find WEKO in the "Modules not yet installed" tab.
Let's click "Install" link which located right hand side of WEKO module name.
If you can find the word "Succesfully installed." at the end of the install log, congratulations!
Installation WEKO into the NC2 has been completed.
Customization for Multilingual
Only English, Chinese and Japanese are available by the original NC2. Therefore, we need to apply patch for more multilingual function. First you need to checkout the patch and just copy it to the NC2 application directory.
コード ブロック | ||
---|---|---|
| ||
wget -O nc2multilang.tar.gz https://bitbucket.org/niijp/nc2-patch-multilanguage/get/master.tar.gz
tar zxvf nc2multilang.tar.gz
cd niijp-nc2-patch-multilanguage-[commit number]
sudo cp -rp webapp /var/www/html/nc2/ |
MySQL DB also have to be modify for this customization.
In this SQL file database prefix for NC2 is assumed as "nc2" as has been instructed previously.
If you apply different prefix, please modify SQL file appropriately.
コード ブロック | ||
---|---|---|
| ||
mysql -u nc2user -pnc2pass
mysql> use nc2db
mysql> source AddLanguageForNC2SQL.sql |
Completed!
Show WEKO Block
Go to the NC2 top page and click "Setting mode on" link in the header.
After switching to the Setting Mode, you can select WEKO module in the drop down menu.
Now you paste WEKO module on the top page. Here is the control panel page of WEKO.
Setting up for the External Commands
In the [Management] => [Server Setting] tab, you can find "Server Environment" menu.
Clicking the [Execute] button automatically search the commands and change signal color to green if the system has.
In order to store the path to the commands, click the [Commit] button after this operation.
Setting up for the Language Selection
In order to show the language select function, please click the "management" tab.
In the [management] => [display setting] tab, you can find "language setting" menu.
In this menu, that is, [language setting] => [select language setting], please select "Display" (default is "Hide") from the drop down list.
Then click "commit" button at the bottom of the page.
You can exit from the control panel by clicking "Quit" link at the right hand side of the WEKO block header.
For multilingual, web page for each language have to be prepared by the following procedure.
- As same as showing the WEKO block, go to Setting Mode and show language and menu module.
- In the language module, select the language which can to be selected in your page.
- After selecting an language, create a new page under the public space by using the menu module.
- In the page created in 2, show WEKO block.
- Same procedure have to be repeated for other language.