IIPImage now an Official FreeBSD Package

FreeBSD, New Release, Server No Comments

IIPImage is is now an official FreeBSD package. As of version 1.0 of iipsrv, the IIPImage server is now included as part of the FreeBSD ports package collection. The iipsrv package, net/iipsrv, has binary builds available for both 32 and 64bit FreeBSD. For the latest build information, see the build and package status page.

Installation

Installation is very straight-forward. Simply use the default FreeBSD package manager, pkg, to install:

sudo pkg install iipsrv

The pkg utility will install into /usr/local/ by default with the iipsrv.fcgi binary in /usr/local/bin/iipsrv.fcgi and a start-up script in /usr/local/etc/rc.d/iipsrv, which will allow you to easily run iipsrv in stand-alone mode. Note that this binary does not include Memcached or JPEG2000 support. If you require these, you will need to compile iipsrv manually.

Running iipsrv as an Independent Process

iipsrv can be started as a stand-alone process independent of the web server. The supplied rc start-up script can be used to start iipsrv with the following default command line flags:

--bind 127.0.0.1:9111

This will start iipsrv in stand-alone (command line) mode listening on localhost (127.0.0.1) and port 9111 and will be configured to create a log file in /tmp/iipsrv.log.

You can optionally modify various settings by adding them to /etc/rc.conf. For example:

# /etc/rc.conf iipsrv start-up configuration

# Enable iipsrv at system startup
iipsrv_enable="YES"

# Specify IP address and port to bind to in stand-alone mode
iipsrv_flags="--bind 127.0.0.1:9000"

# Environment parameters file for iipsrv
iipsrv_config="/etc/iipsrv.conf"

The /etc/iipsrv.conf file should contain start-up environment variables for iipsrv as described in the server documentation. For example:

# /etc/iipsrv.conf
LOGFILE=/tmp/iipsrv.log
VERBOSITY=5
JPEG_QUALITY=90
MAX_CVT=1000

You can then start the IIPImage server process using the following command:

/usr/local/etc/rc.d/iipsrv start

If you have set iipsrv_enable to YES in /etc/rc.conf, iipsrv will starting automatically on system reboot.

Ports also makes it possible to easily run multiple simultaneous instances of iipsrv. This is useful, for example, if you want different iipsrv settings or you want to serve different file trees for different sites etc. To do this, you should specify each instance in /etc/rc.conf as in the following example:

iipsrv_instances="site1 site2" 
iipsrv_site1_flags="--bind 127.0.0.1:9111" 
iipsrv_site1_user="site1_chroot_user" 
iipsrv_site1_config="/usr/local/etc/iipsrv_site1.conf" 
iipsrv_site1_enable="YES" 
 
iipsrv_site2_flags="--bind 127.0.0.1:9112" 
iipsrv_site2_user="site2_chroot_user" 
iipsrv_site2_config="/usr/local/etc/iipsrv_site2.conf" 
iipsrv_site2_enable="YES"

Running iipsrv with a Web Server

The IIPImage server can also be started and managed directly by the Apache or Lighttpd web servers, rather than being run as an independent process.

Apache

For Apache, you will need to install an FCGI module and either mod_fcgid or mod_fastcgi can be used. To install with mod_fcgid:

sudo pkg install apache24 ap24-mod_fcgid

To enable the module, uncomment the following line in /usr/local/etc/apache24/http.conf

#LoadModule fastcgi_module libexec/apache24/mod_fcgid.so

Similarly to install with mod_fastcgi:

sudo pkg install apache24 ap24-mod_fastcgi

To enable the module, uncomment the following line in /usr/local/etc/apache24/http.conf

#LoadModule fastcgi_module libexec/apache24/mod_fastcgi.so

You will then need to configure Apache to manage iipsrv. See the Apache section of the iipsrv server documentation for more details.

Lighttpd

The Lighttpd web server includes FCGI support by default, so simply install:

sudo pkg install lighttpd

Then enable fastcgi in the modules configuration file (/usr/local/etc/lighttpd/modules.conf). You should then add the iipsrv directives to the Lighttpd FastCGI configuration file (/usr/local/etc/lighttpd/conf.d/fastcgi.conf). See the iipsrv server documentation for Lighttpd for more details.

Other Web Servers

For web servers such as NginX or Apache Java Tomcat, which cannot start FCGI processes themselves, you should start iipsrv in stand-alone mode as explained above and configure your server to point to the IP address and port configured for iipsrv. See the server documentation for NginX or for Tomcat for more details.

 

iipsrv 1.0

IIIF, JPEG2000, Mac OS X, New Release, Optimization, Protocol, Server No Comments

Version 1.0 of iipsrv, the IIPImage server, is now officially released! This is a major new version containing a whole host of new features, major performance enhancements, optimizations, numerous bug-fixes and stability enhancements. Major new features include support for the IIIF protocol, 32 bit floating point data support and several new image processing commands.

New features include:

Read the rest…

IIPImage now an official Fedora Package

New Release, Server No Comments

IIPImage is now an official stable Fedora package and is included out of the box with the new release of Fedora 19! The package is based on a recent build of the development version of iipsrv available from the Github repository.

Information on the Fedora packages is available at https://apps.fedoraproject.org/packages/iipsrv with the package source at http://pkgs.fedoraproject.org/cgit/iipsrv.git

The packages are also included in Fedora-based enterprise distributions such as CentOS and Red Hat Enterprise Linux via the EPEL repository.

To install, simply use the default yum package manager:

sudo yum install iipsrv

This will install the IIPImage server in /usr/libexec/iipsrv/iipsrv.fcgi

Apache

To use with Apache, you will need to also install the Apache configuration files:

sudo yum install iipsrv-httpd-fcgi

which will install the configuration file iipsrv.conf in /etc/httpd/conf.d/. Modify this if necessary. You can find a full list of possible server parameters here. You will then need to start Apache (or restart if it is already running):

sudo service restart httpd

You should now have the IIPImage server running at  http://your.server/iipsrv

Lighttpd

There is no Lighttpd package at the moment, but to use iipsrv with lighttpd, first install lighttpd and it’s fcgi module (if not already installed):

sudo yum install lighttpd-fastcgi

Then add the following to the fastcgi configuration file /etc/lighttpd/conf.d/fastcgi.conf:

fastcgi.server = ( "/iipsrv" =>
  (( "socket" => "/tmp/iipsrv-fastcgi.socket",
     "check-local" => "disable",
     "min-procs" => 1,
     "max-procs" => 1,
     "bin-path" => "/usr/libexec/iipsrv/iipsrv.fcgi",
     "bin-environment" => (
        "LOGFILE" => "/tmp/iipsrv.log",
        "VERBOSITY" => "2",
      )
  ))
)

and activate fastcgi by uncommenting the following line from /etc/lighttpd/modules.conf:

Include "conf.d/fastcgi.conf"

Then start / restart lighttpd:

sudo service restart lighttpd

This will start the IIPImage server at http://your.server/iipsrv

Running as a Service

It is also possible to start the IIPImage server as an independent service without Apache or Lighttpd:

sudo service start iipsrv

which will start the server listening by default on 127.0.0.1 on port 9002. For the systemd-based Fedora, this is configurable by following the instructions in /lib/systemd/system/iipsrv.service. For sysv-based RHEL distributions, this is configurable in /etc/iipsrv/iipsrv.conf. Starting iipsrv this way allows you to use it with Nginx, Tomcat or if you are hosting your web server on a different machine and wish to proxy requests to iipsrv.

Note that if you are using SELinux, connections from Apache to unknown ports are not allowed by default. To fix this, use semanage, the SELinux policy management tool to add it:

sudo semanage port -a -t http_port_t -p tcp 9002

Clients

Only the server is included in this package, so you will need to install a client, such as IIPMooViewer or IIPZoom yourself. Note that the default server URL is /iipsrv and not the usual /fcgi-bin/iipsrv.fcgi, so don’t forget to set this correctly in the viewer configuration of IIPMooViewer, IIPZoom or whichever viewer you choose to use.

Many thanks to Johan Cwiklinkski for creating the package. You can find more details on his blog and on the Redhat bugzilla review.

IIPImage now an Official Ubuntu Package

New Release, Server No Comments

IIPImage is now an official Ubuntu and Debian package! Version 0.9.9 of the IIPImage server is now distributed as part of the Ubuntu 12.10 Quantal Quetzal release.  It is also included in Debian’s Sid unstable branch, and testing branch from where it should migrate to become part of the forth-coming Debian 7 Wheezy release.

The Debian source package is available here: http://packages.debian.org/source/sid/iipimage and the Ubuntu lauchpad package here: https://launchpad.net/ubuntu/+source/iipimage

The package is split into two with a main server package: iipimage-server and a separate IIPImage documentation package: iipimage-doc

So, installing IIPImage is now extremely easy. To do so on Ubuntu 12.10, simply install iipimage-server via the graphical package manager or via the command line:

apt-get install iipimage-server

and optionally for the documentation:

apt-get install iipimage-doc

Now restart Apache and you should have the IIPImage server running on http://your.server/iipsrv/iipsrv.fcgi

Only the server is included in this package, so you will need to install a client, such as IIPMooViewer or IIPZoom yourself. Note that the server URL is /iipsrv/iipsrv.fcgi and not the usual /fcgi-bin/iipsrv.fcgi, so don’t forget to set this correctly in the viewer configuration of IIPMooViewer, IIPZoom or whichever viewer you choose to use.

The package is configured to work with both Apache and Lighttpd. If you are using Apache, the configuration file is at /etc/apache2/mods-available/iipsrv.conf. For Lighttpd, /etc/lighttpd/conf-available/20-iipsrv.conf. See the server documentation page for details of the available parameters. The log file is at /var/log/iipsrv.log.

The package has Memcached support built in and will automatically use Memcached for caching if this is running on the host machine. If not, simply start it to allow IIPImage to use it.

To install on the current Debian, you will need to be on the testing (or unstable branch). If you are on testing, add an additional unstable source to /etc/apt/sources.list. See the testing documentation for further details. Make sure you first update your package index, then simply install as above.

If you want JPEG2000 support or don’t want to use the Debian testing or unstable branch, continue to use our stable but “unofficial” 0.9.9 Ubuntu packages that are compatible with Ubuntu 11.10 and 12.04.

Special thanks to Mathieu Malaterre for building and maintaining the official Debian package!

iipsrv now on Github

JPEG2000, New Release, Server No Comments

The latest development code for iipsrv, the IIPImage server is now hosted on Github. This should make things far easier for developers to share code and to submit patches. You can check out the repository here https://github.com/ruven/iipsrv

The latest code has a host of new features including:

  • Exact export resizing for both TIFF and JPEG2000
  • Improved interpolation algorithms for CVT export
  • Extended support for 1, 8, 16 and 32 bit images
  • Gamma support
  • Improved metadata handling
  • Performance improvements
  • Improved Windows compatibility
  • Bug fixes!

So, check it out and get forking!

« Previous Entries

Flattr this




Donations appreciated Bookmark and Share
Get IIPImage at SourceForge.net. Fast, secure and Free Open Source software downloads