AO Logo
 
 EnglishJapanese
  
  
  
Life Cycle
Company Info
AOServ Platform
Services
Data Centers
Articles
Client Area
Contact Us
AO
AO Industries, Inc.
Application Infrastructure ProviderApplication Infrastructure Provider
Sign UpWhat's NewClient AreaContact UsSite Map
 
your location:   Home Page··· What's Old
What's Old
See What's New instead.

Date Description
2018-12-31

PHP 5.6 is now end-of-life.

The following versions of PHP are currently supported:

  1. PHP 5.4 (CentOS 7)
  2. PHP 7.1
  3. PHP 7.2
  4. PHP 7.3

Please review the following migration guides for this upgrade:

  1. Migrating from PHP 5.6.x to PHP 7.0.x
  2. Migrating from PHP 7.0.x to PHP 7.1.x
  3. Migrating from PHP 7.1.x to PHP 7.2.x
  4. Migrating from PHP 7.2.x to PHP 7.3.x

For all managed servers, we are upgrading any remaining uses of PHP 5.6 to PHP 7.1.

We will carefully review all php.ini files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2018-12-30
2018-12-16
2018-12-10

PHP 7.0 will be end-of-life on 2019-01-10 per PHP: Supported Versions.

The following versions of PHP will be supported at the time PHP 7.0 becomes end-of-life:

  1. PHP 5.4 (CentOS 7)
  2. PHP 7.1
  3. PHP 7.2
  4. PHP 7.3

Please review the following migration guides in preparation for this upgrade:

  1. Migrating from PHP 7.0.x to PHP 7.1.x
  2. Migrating from PHP 7.1.x to PHP 7.2.x
  3. Migrating from PHP 7.2.x to PHP 7.3.x

We will communicate with you individually to coordinate any required upgrades before PHP 7.0 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of PHP 7.0 to PHP 7.1.

We will carefully review all php.ini files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2018-12-09
2018-12-08
2018-12-07

We now support Apache Maven 3.6. We package it as apache-maven_3, installed in /opt/apache-maven-3.

We also check for updates weekly, and deploy updates during our weekly update roll-outs.

2018-12-07

We have improved our packaging of Apache Ant:

  1. Added Provides "ant" to SPEC file.
  2. Now including library dependencies per installation recommendations.
  3. Added environment variable ANT_HOME to profile scripts.
2018-12-05

We are updating all managed servers from CentOS 7.5 to CentOS 7.6 this week.

We have not experienced any compatibility issues during our packaging and testing. However, the following guides may assist you in evaluating compatibility:

This update includes an updated kernel, so each server will be rebooted as part of the update process. As usual, we will perform these updates during your scheduled maintenance times while performing any documented per-server custom procedures before and after the reboot.

2018-12-01

PHP 7.1 will be end-of-life on 2019-12-01 per PHP: Supported Versions.

The following versions of PHP will be supported at the time PHP 7.1 becomes end-of-life:

  1. PHP 5.4 (CentOS 7)
  2. PHP 7.2
  3. PHP 7.3
  4. PHP 7.4

Please review the following migration guides in preparation for this upgrade:

  1. Migrating from PHP 7.1.x to PHP 7.2.x
  2. Migrating from PHP 7.2.x to PHP 7.3.x
  3. Migrating from PHP 7.3.x to PHP 7.4.x

We will communicate with you individually to coordinate any required upgrades before PHP 7.1 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of PHP 7.1 to PHP 7.2.

We will carefully review all php.ini files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2018-11-30

PHP 5.6 will be end-of-life on 2018-12-31 per PHP: Supported Versions.

The following versions of PHP will be supported at the time PHP 5.6 becomes end-of-life:

  1. PHP 5.4 (CentOS 7)
  2. PHP 7.1
  3. PHP 7.2
  4. PHP 7.3

Please review the following migration guides in preparation for this upgrade:

  1. Migrating from PHP 5.6.x to PHP 7.0.x
  2. Migrating from PHP 7.0.x to PHP 7.1.x
  3. Migrating from PHP 7.1.x to PHP 7.2.x
  4. Migrating from PHP 7.2.x to PHP 7.3.x

We will communicate with you individually to coordinate any required upgrades before PHP 5.6 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of PHP 5.6 to PHP 7.1.

We will carefully review all php.ini files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2018-11-07

We now support PostgreSQL 11. We have included the following modules in our build:

  1. cube - Used by the earthdistance module.
  2. earthdistance - Allows spatial indexing of geographical coordinates - (latitude, longitude) pairs.
2018-10-29

Java 10 is now end-of-life.

Please review the following migration guides for this upgrade:

  1. Java 11 Migration Guide

Any uses of /opt/jdk-10/profile.* must be updated to either /opt/jdk-lts/profile.* or /opt/jdk-current/profile.* (or a specific newer version), depending on your choice of stability versus features.

Applications that use /opt/jdk-current/profile.* will switch from Java 10 to Java 11 on their next restart.

For all managed servers, we are replacing /opt/jdk-10/profile.* with /opt/jdk-11/profile.*. We are also restarting all applications currently running Java 10, so their profile scripts can select a newer version of Java.

As usual, we will perform these updates during your scheduled maintenance times.

2018-10-28

We now support Java 11.

Java 11 may be used for any existing application by updating your profile script to include /opt/jdk-11/profile.sh (for Bourne shells) or /opt/jdk-11/profile.csh (for C shells). See this FAQ for more details on how to change Java versions:

/clientarea/FAQ.ao?category=jvms&page=profile

This is a LTS version and is expected to be supported until September 2023.

In this version, we have switched to the OpenJDK builds. We are no longer using the commercial build from Oracle.

2018-10-10

PHP 7.0 will be end-of-life on 2019-01-10 per PHP: Supported Versions.

The following versions of PHP will be supported at the time PHP 7.0 becomes end-of-life:

  1. PHP 5.4 (CentOS 7)
  2. PHP 7.1
  3. PHP 7.2
  4. PHP 7.3

Please review the following migration guides in preparation for this upgrade:

  1. Migrating from PHP 7.0.x to PHP 7.1.x
  2. Migrating from PHP 7.1.x to PHP 7.2.x
  3. Migrating from PHP 7.2.x to PHP 7.3.x

We will communicate with you individually to coordinate any required upgrades before PHP 7.0 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of PHP 7.0 to PHP 7.1.

We will carefully review all php.ini files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2018-09-30

PHP 5.6 will be end-of-life on 2018-12-31 per PHP: Supported Versions.

The following versions of PHP will be supported at the time PHP 5.6 becomes end-of-life:

  1. PHP 5.4 (CentOS 7)
  2. PHP 7.1
  3. PHP 7.2
  4. PHP 7.3

Please review the following migration guides in preparation for this upgrade:

  1. Migrating from PHP 5.6.x to PHP 7.0.x
  2. Migrating from PHP 7.0.x to PHP 7.1.x
  3. Migrating from PHP 7.1.x to PHP 7.2.x
  4. Migrating from PHP 7.2.x to PHP 7.3.x

We will communicate with you individually to coordinate any required upgrades before PHP 5.6 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of PHP 5.6 to PHP 7.1.

We will carefully review all php.ini files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2018-09-16
2018-08-17

Java 10 will be end-of-life in September 2018 per Oracle Java SE Support Roadmap.

Please review the following resources in preparation for this upgrade:

  1. JDK 11

Once end-of-life is reached:

  1. Applications that use /opt/jdk-current/profile.* will switch from Java 10 to Java 11 on their next restart.
  2. For all managed servers, we will replace /opt/jdk-10/profile.* with /opt/jdk-11/profile.*. We will also restart all applications currently running Java 10, so their profile scripts can select a newer version of Java.

As usual, we will perform these updates during your scheduled maintenance times.

2018-08-13

We now support Python 3.7.

Python 3.7 may be used for any existing user or application by updating your profile script to include /opt/python-3.7/profile.sh (for Bourne shells) or /opt/python-3.7/profile.csh (for C shells).

2018-08-13

We now support Python 3.6.

Python 3.6 may be used for any existing user or application by updating your profile script to include /opt/python-3.6/profile.sh (for Bourne shells) or /opt/python-3.6/profile.csh (for C shells).

2018-08-13

We now support Python 3.5.

Python 3.5 may be used for any existing user or application by updating your profile script to include /opt/python-3.5/profile.sh (for Bourne shells) or /opt/python-3.5/profile.csh (for C shells).

2018-08-13

We now support Python 3.4.

Python 3.4 may be used for any existing user or application by updating your profile script to include /opt/python-3.4/profile.sh (for Bourne shells) or /opt/python-3.4/profile.csh (for C shells).

Please note that Supported Versions is 2019-03-16. Please consider going to Python 3.5, Python 3.6, or Python 3.7 now.

2018-07-29

We now support Java 10.

Java 10 may be used for any existing application by updating your profile script to include /opt/jdk-10/profile.sh (for Bourne shells) or /opt/jdk-10/profile.csh (for C shells). See this FAQ for more details on how to change Java versions:

/clientarea/FAQ.ao?category=jvms&page=profile

As this is a non-LTS version, Java 10 will be supported until Java 11 is available. At that time, all uses of Java 10 will be automatically updated to Java 11.

This will be our last version using the commercial build from Oracle. In the next version, Java 11 LTS, we will be switching to the OpenJDK builds.

Due to Java version numbers no longer beginning with "1.", along with the introduction of "LTS" (long-term support) and non-LTS versions, we have split our jdk1 meta-package into jdk-lts (favoring stability by using the oldest supported LTS Java release) and jdk-current (favoring features by always having the most current Java release).

Any uses of /opt/jdk1/profile.* must be updated to either /opt/jdk-lts/profile.* or /opt/jdk-current/profile.*, depending on your choice of stability versus features.

For all managed servers, we are replacing /opt/jdk1/profile.* with /opt/jdk-lts/profile.*, as the LTS versions best match our previous release cycle. Likewise, new instances of Apache Tomcat will default to jdk-lts.

2018-07-27
2018-07-27
2018-07-17
2018-07-17
2018-07-17

We now support PHP 7.0. We have compiled PHP against PostgreSQL 9.4.

We now build with mysqlnd instead of depending on MySQL native libraries.

We have removed the dbase extension from this build. If this extension is required by your application, please contact us.

In this build, we have made the following changes to extension versions:

  1. memcached extension is now 3.*
  2. propro extension is now 2.*
  3. raphf extension is now 2.*
  4. HTTP extension is now 3.*

Older applications may need to be updated for these extension version changes before switching to PHP 7.0.

For both efficiency and security, we have switched to a more modular build of PHP, where some of the built-in extensions are built as shared libraries, packaged as separate RPMs, and only installed and enabled as-needed on a per-Apache/per-site basis. This means some extensions that were on by default in PHP 5 are now off by default in PHP 7.

We moved the default php.ini file from /opt/php-X.Y/lib/php.ini to /etc/opt/php-X.Y/php.ini, where X and Y are the major and minor versions, respectively.

We have also enabled Scan Directories with a default of /etc/opt/php-7.0/conf.d. For mod_php, this is overridden to /etc/httpd/conf/php[@instance]/conf.d for per-Apache configuration. For CGI, this is overridden to /var/www/site_name/webapps/ROOT/cgi-bin/php.d for per-site configuration.

2018-07-16
2018-07-15

We now support PostgreSQL 10. We have included the following modules in our build:

  1. cube - Used by the earthdistance module.
  2. earthdistance - Allows spatial indexing of geographical coordinates - (latitude, longitude) pairs.
2018-07-15

We now support PostgreSQL 9.6. We have included the following modules in our build:

  1. cube - Used by the earthdistance module.
  2. earthdistance - Allows spatial indexing of geographical coordinates - (latitude, longitude) pairs.
  3. tsearch2 - Backwards compatibility for applications developed for versions of PostgreSQL prior to 8.3.
2018-07-14

We now support PostgreSQL 9.5. We have included the following modules in our build:

  1. cube - Used by the earthdistance module.
  2. earthdistance - Allows spatial indexing of geographical coordinates - (latitude, longitude) pairs.
  3. tsearch2 - Backwards compatibility for applications developed for versions of PostgreSQL prior to 8.3.
2018-07-10

PHP 7.0 will be end-of-life on 2019-01-10 per PHP: Supported Versions.

The following versions of PHP will be supported at the time PHP 7.0 becomes end-of-life:

  1. PHP 5.4 (CentOS 7)
  2. PHP 7.1
  3. PHP 7.2
  4. PHP 7.3

Please review the following migration guides in preparation for this upgrade:

  1. Migrating from PHP 7.0.x to PHP 7.1.x
  2. Migrating from PHP 7.1.x to PHP 7.2.x
  3. Migrating from PHP 7.2.x to PHP 7.3.x

We will communicate with you individually to coordinate any required upgrades before PHP 7.0 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of PHP 7.0 to PHP 7.1.

We will carefully review all php.ini files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2018-06-30

Tomcat 8.0 is now end-of-life.

The following versions of Tomcat are currently supported:

  1. Tomcat 7.0
  2. Tomcat 8.5
  3. Tomcat 9.0

Please review the following migration guides for this upgrade:

  1. Tomcat 7.0.x Migration Guide
  2. Tomcat 8.5.x Migration Guide
  3. Tomcat 9.0.x Migration Guide

We now support in-place Tomcat upgrades to Tomcat 8.5 and above. This capability is available in AOSH through the following commands:

After performing the upgrade, please refer to the README.txt file in either /var/opt/apache-tomcat/…/README.txt (for a Multi-Site Tomcat JVM) or /var/www/…/README.txt (for a Standard Tomcat JVM). The README.txt file includes details about the auto-backup files named *.bak along with a generated command you may use to clean-up the backup files.

For all managed servers, we are upgrading any remaining uses of Tomcat 8.0 to Tomcat 8.5.

We will carefully review all *.bak files to maintain any customizations through the upgrade. Applications will be restarted, possibly more than once, during this process.

As usual, we will perform these updates during your scheduled maintenance times.

2018-06-30

PHP 5.6 will be end-of-life on 2018-12-31 per PHP: Supported Versions.

The following versions of PHP will be supported at the time PHP 5.6 becomes end-of-life:

  1. PHP 5.4 (CentOS 7)
  2. PHP 7.1
  3. PHP 7.2
  4. PHP 7.3

Please review the following migration guides in preparation for this upgrade:

  1. Migrating from PHP 5.6.x to PHP 7.0.x
  2. Migrating from PHP 7.0.x to PHP 7.1.x
  3. Migrating from PHP 7.1.x to PHP 7.2.x
  4. Migrating from PHP 7.2.x to PHP 7.3.x

We will communicate with you individually to coordinate any required upgrades before PHP 5.6 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of PHP 5.6 to PHP 7.1.

We will carefully review all php.ini files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2018-06-17

Java 10 will be end-of-life in September 2018 per Oracle Java SE Support Roadmap.

Please review the following resources in preparation for this upgrade:

  1. JDK 11

Once end-of-life is reached:

  1. Applications that use /opt/jdk-current/profile.* will switch from Java 10 to Java 11 on their next restart.
  2. For all managed servers, we will replace /opt/jdk-10/profile.* with /opt/jdk-11/profile.*. We will also restart all applications currently running Java 10, so their profile scripts can select a newer version of Java.

As usual, we will perform these updates during your scheduled maintenance times.

2018-05-30

Tomcat 8.0 will be end-of-life on 2018-06-30 per End of life for Apache Tomcat 8.0.x.

The following versions of Tomcat will be supported at the time Tomcat 8.0 becomes end-of-life:

  1. Tomcat 7.0
  2. Tomcat 8.5
  3. Tomcat 9.0

Please review the following migration guides in preparation for this upgrade:

  1. Tomcat 7.0.x Migration Guide
  2. Tomcat 8.5.x Migration Guide
  3. Tomcat 9.0.x Migration Guide

We will communicate with you individually to coordinate any required upgrades before Tomcat 8.0 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of Tomcat 8.0 to Tomcat 8.5.

We will carefully review all server.xml and web.xml files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2018-03-30

Tomcat 8.0 will be end-of-life on 2018-06-30 per End of life for Apache Tomcat 8.0.x.

The following versions of Tomcat will be supported at the time Tomcat 8.0 becomes end-of-life:

  1. Tomcat 7.0
  2. Tomcat 8.5
  3. Tomcat 9.0

Please review the following migration guides in preparation for this upgrade:

  1. Tomcat 7.0.x Migration Guide
  2. Tomcat 8.5.x Migration Guide
  3. Tomcat 9.0.x Migration Guide

We will communicate with you individually to coordinate any required upgrades before Tomcat 8.0 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of Tomcat 8.0 to Tomcat 8.5.

We will carefully review all server.xml and web.xml files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2018-03-16
2018-01-10

PHP 7.0 will be end-of-life on 2019-01-10 per PHP: Supported Versions.

The following versions of PHP will be supported at the time PHP 7.0 becomes end-of-life:

  1. PHP 5.4 (CentOS 7)
  2. PHP 7.1
  3. PHP 7.2
  4. PHP 7.3

Please review the following migration guides in preparation for this upgrade:

  1. Migrating from PHP 7.0.x to PHP 7.1.x
  2. Migrating from PHP 7.1.x to PHP 7.2.x
  3. Migrating from PHP 7.2.x to PHP 7.3.x

We will communicate with you individually to coordinate any required upgrades before PHP 7.0 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of PHP 7.0 to PHP 7.1.

We will carefully review all php.ini files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2017-12-31

PHP 5.6 will be end-of-life on 2018-12-31 per PHP: Supported Versions.

The following versions of PHP will be supported at the time PHP 5.6 becomes end-of-life:

  1. PHP 5.4 (CentOS 7)
  2. PHP 7.1
  3. PHP 7.2
  4. PHP 7.3

Please review the following migration guides in preparation for this upgrade:

  1. Migrating from PHP 5.6.x to PHP 7.0.x
  2. Migrating from PHP 7.0.x to PHP 7.1.x
  3. Migrating from PHP 7.1.x to PHP 7.2.x
  4. Migrating from PHP 7.2.x to PHP 7.3.x

We will communicate with you individually to coordinate any required upgrades before PHP 5.6 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of PHP 5.6 to PHP 7.1.

We will carefully review all php.ini files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2017-12-30

Tomcat 8.0 will be end-of-life on 2018-06-30 per End of life for Apache Tomcat 8.0.x.

The following versions of Tomcat will be supported at the time Tomcat 8.0 becomes end-of-life:

  1. Tomcat 7.0
  2. Tomcat 8.5
  3. Tomcat 9.0

Please review the following migration guides in preparation for this upgrade:

  1. Tomcat 7.0.x Migration Guide
  2. Tomcat 8.5.x Migration Guide
  3. Tomcat 9.0.x Migration Guide

We will communicate with you individually to coordinate any required upgrades before Tomcat 8.0 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of Tomcat 8.0 to Tomcat 8.5.

We will carefully review all server.xml and web.xml files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2017-06-30

Tomcat 8.0 will be end-of-life on 2018-06-30 per End of life for Apache Tomcat 8.0.x.

The following versions of Tomcat will be supported at the time Tomcat 8.0 becomes end-of-life:

  1. Tomcat 7.0
  2. Tomcat 8.5
  3. Tomcat 9.0

Please review the following migration guides in preparation for this upgrade:

  1. Tomcat 7.0.x Migration Guide
  2. Tomcat 8.5.x Migration Guide
  3. Tomcat 9.0.x Migration Guide

We will communicate with you individually to coordinate any required upgrades before Tomcat 8.0 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of Tomcat 8.0 to Tomcat 8.5.

We will carefully review all server.xml and web.xml files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2016-12-31

Tomcat 6.0 is now end-of-life.

The following versions of Tomcat are currently supported:

  1. Tomcat 7.0
  2. Tomcat 8.0
  3. Tomcat 8.5

Please review the following migration guides for this upgrade:

  1. Tomcat 7.0.x Migration Guide
  2. Tomcat 8.0.x Migration Guide
  3. Tomcat 8.5.x Migration Guide

For all managed servers, we are upgrading any remaining uses of Tomcat 6.0 to Tomcat 7.0.

We will carefully review all server.xml and web.xml files to maintain any customizations through the upgrade. Applications will be restarted, possibly more than once, during this process.

As usual, we will perform these updates during your scheduled maintenance times.

2016-11-30

Tomcat 6.0 will be end-of-life on 2016-12-31 per End of life for Apache Tomcat 6.0.x.

The following versions of Tomcat will be supported at the time Tomcat 6.0 becomes end-of-life:

  1. Tomcat 7.0
  2. Tomcat 8.0
  3. Tomcat 8.5

Please review the following migration guides in preparation for this upgrade:

  1. Tomcat 7.0.x Migration Guide
  2. Tomcat 8.0.x Migration Guide
  3. Tomcat 8.5.x Migration Guide

We will communicate with you individually to coordinate any required upgrades before Tomcat 6.0 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of Tomcat 6.0 to Tomcat 7.0.

We will carefully review all server.xml and web.xml files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2016-09-30

Tomcat 6.0 will be end-of-life on 2016-12-31 per End of life for Apache Tomcat 6.0.x.

The following versions of Tomcat will be supported at the time Tomcat 6.0 becomes end-of-life:

  1. Tomcat 7.0
  2. Tomcat 8.0
  3. Tomcat 8.5

Please review the following migration guides in preparation for this upgrade:

  1. Tomcat 7.0.x Migration Guide
  2. Tomcat 8.0.x Migration Guide
  3. Tomcat 8.5.x Migration Guide

We will communicate with you individually to coordinate any required upgrades before Tomcat 6.0 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of Tomcat 6.0 to Tomcat 7.0.

We will carefully review all server.xml and web.xml files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2016-07-21

Created a new servlet filter to automatically strip invalid XML characters from all inputs. GET requests are 301 redirected to a URL with the characters stripped. POST, and all other methods, are simply filtered and passed along to the rest of the application.

We have added this new filter to all JSP-based web applications we are currently maintaining.

Please see com.aoindustries.servlet.filter.StripInvalidXmlCharactersFilter for more information.

2016-07-20

Separated our set of reusable servlet filters into their own project. Please see the new ao-servlet-filter project at Downloads.

2016-06-30

Tomcat 6.0 will be end-of-life on 2016-12-31 per End of life for Apache Tomcat 6.0.x.

The following versions of Tomcat will be supported at the time Tomcat 6.0 becomes end-of-life:

  1. Tomcat 7.0
  2. Tomcat 8.0
  3. Tomcat 8.5

Please review the following migration guides in preparation for this upgrade:

  1. Tomcat 7.0.x Migration Guide
  2. Tomcat 8.0.x Migration Guide
  3. Tomcat 8.5.x Migration Guide

We will communicate with you individually to coordinate any required upgrades before Tomcat 6.0 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of Tomcat 6.0 to Tomcat 7.0.

We will carefully review all server.xml and web.xml files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2016-03-05

The default Tomcat maxPostSize setting of 2 MiB is too small for real-world data, such as pictures from modern digital cameras. We have specified a maxPostSize of 16 MiB for all Tomcat 6, 7, and 8 installations.

Please see Apache Tomcat 8 Configuration Reference, Common Attributes for more information.

2016-01-08

We now support PHP 5.6 in both 32-bit and 64-bit builds. We have compiled PHP against PostgreSQL 9.4 and MySQL 5.7.

In this build we have switched to the 2.* version of the HTTP extension. Older applications may need to be updated for this change before switching to PHP 5.6.

2016-01-07

We now support MySQL 5.7 in both 32-bit and 64-bit builds.

2016-01-06
2016-01-05

We now support PostgreSQL 9.4 in both 32-bit and 64-bit builds. We have included the following modules in our build:

  1. cube - Used by the earthdistance module.
  2. earthdistance - Allows spatial indexing of geographical coordinates - (latitude, longitude) pairs.
  3. tsearch2 - Backwards compatibility for applications developed for versions of PostgreSQL prior to 8.3.
2015-12-31

Tomcat 6.0 will be end-of-life on 2016-12-31 per End of life for Apache Tomcat 6.0.x.

The following versions of Tomcat will be supported at the time Tomcat 6.0 becomes end-of-life:

  1. Tomcat 7.0
  2. Tomcat 8.0
  3. Tomcat 8.5

Please review the following migration guides in preparation for this upgrade:

  1. Tomcat 7.0.x Migration Guide
  2. Tomcat 8.0.x Migration Guide
  3. Tomcat 8.5.x Migration Guide

We will communicate with you individually to coordinate any required upgrades before Tomcat 6.0 reaches end-of-life.

Once end-of-life is reached, we will upgrade any remaining uses of Tomcat 6.0 to Tomcat 7.0.

We will carefully review all server.xml and web.xml files to maintain any customizations through the upgrade. As usual, we will perform these updates during your scheduled maintenance times.

2015-02-18

We are now using Stripe for our credit card processing. Sage Payments has served us well over the years and may remain a good option for some merchants, but we are attracted to the more predictable fee structure of Stripe.

2015-02-12

Our family of sites are now all running 100% over HTTPS. Previous releases of our system supported a mixture of HTTP and HTTPS. Now all communication is encrypted for maximum security.

2009-09-06
2009-08-29

We have increased our port speed with Hurricane Electric at our Fremont, California data center from 100 Mbps to 1 Gbps. With this upgrade and related renegotiation, we are able to pass on lower bandwidth rates. So, if you have some steaming media or higher resolution images that you have been hesistating to post due to bandwidth cost concerns, open the flood gates and let the data flow.

Please see Fremont, CA Bandwidth Rates for updated rates.

2009-08-24

Working with straight JDBC in a robust way can be very tedious. Granted, there are many different ways to represent databases using frameworks and abstractions above JDBC, but sometimes you just want to access or manipulate a database with a simple, direct, and intuitive mechanism. Our com.aoindustries.dbc package meets these requirements.

We have recently added an alternate constructor to be able to create a com.aoindustries.dbc.Database instance providing it a instance of javax.sql.DataSource. This combination works well with data sources configured in our Web Sites Control Panel and accessed using JNDI.

2009-08-23

Since our inception in late 1999 and our initial entry to commercial web hosting in mid 2000, we have provided full source code to the aocode-public Java library. This is our catch-all bag of tricks for any code that may be useful to others and requires no external dependencies. This code is heavily used in our projects and well tested and supported.

It has been our intent all along to allow anybody to use this code for any project. Our licensing, however, did not make this clear. We have released the latest versions of aocode-public and the related ao-taglib under the GNU Lesser General Public License Version 3.

2009-08-22

We have created a simple, efficient auto-escaping JSP taglib. The basic premise is to let the tags do the work. The tags interoperate to properly escape data and code, even in complex situations. For example, it is easy and natural to embed arbitrary data from a database into a JavaScript string, contained in a multi-line script inside the onclick attribute of a button. In fact, through careful encoding tags maintain full binary transparency from Java through to JavaScript in this scenario.

2009-08-17

The Payflow Pro connector for our Processor-Neutral Java Credit Card Processing API has been updated to use PayPal's Payflow SDK version 4.3.1.

2009-08-13
2009-08-10

Our monitoring system now watches all MySQL replications and alerts administrators when replication is delayed or halted.

2009-08-04

We have added a routine CHECK TABLE `table_name` FAST QUICK of all MySQL tables to our monitoring systems in order to automatically recover MyISAM tables after an unexpected shutdown. MySQL installations with a typical number of tables will be checked once every five minutes while those with many tables will be scanned less frequently. Administrators will be alerted when any table is in need of manual repair.

2009-08-02

We have greatly increased the scalability of our generic pooling code AOPool and its derivative AOConnectionPool. The old version dated back to 1999 and was designed for a relatively low number of connections (in the hundreds) across low-latency links. Over the years, our AOServ management software installation has become larger and more distributed. The system now maintains pools of thousands of connections over higher latency links. This usage pattern exposed the weaknesses in the old, simple design and implementation.

The new version uses many Java features not available in version 1.1, such as generics, AtomicLong, HashSet, PriorityQueue, and ThreadLocal. The improved connection pool data structures, combined with more fine-grained locking, provides a more scalable connection pool.

2009-07-29

We have added support for MySQL 5.1. The two most compelling reasons we have found to switch to MySQL 5.1 are mixed-mode replication and table partitioning.

Prior to mixed-mode replication, replication was performed using either statement-based or row-based logging, each having its own limitations. When using statement-based replication, developers had to be concerned about any statement that may yield different results between the master and slave. They also had to be cautious about statements that may not work correctly when the slave restarts - namely temporary tables. This places more of a burden on the application developers to avoid these pitfalls.

Mixed-mode replication doesn't solve both of these issues, but it puts a big dent in the first, and more common, issue. When configured to use mixed-mode replication, statement-level replication will be performed until MySQL determines that a statement includes something that may yield different results between master and slave, such as the UUID function, then it switches to binary replication for the remainder of the transaction. Ideally, you get the replication efficiency of statement-based logging and the accuracy of row-based logging.

Finally, table partitioning allows a single table to be split behind the scenes into multiple pieces, or partitions. This allows for greater lock granularity and distribution of a single table across multiple filesystems, which implies multiple block devices, logical volumes, physical volumes, RAID devices, physical media… Together this means higher levels of scalability and concurrency. This is especially important for heavily updated MyISAM tables.

Our standard server hardware currently consists of eight CPU cores, 32 GB of RAM, and a total of 18 hard drives (two internal Xen Dom0 OS drives and 16 hot-swap drives for Xen DomU OS data). Our next generation of machines will provide even more cores, RAM, and storage. Table partioning helps MySQL scale with our virtual servers, which currently range from 256 MB RAM with 30 GB storage all the way up to 32 GB RAM with 16 TB on 7200 RPM disks or 4.8 TB on 15000 RPM disks.

We can install a MySQL 5.1 instance on a separate port to not interfere with any running 4.0, 4.1, or 5.0 installations. This allows time for testing, benchmarking, tuning and migration. Please submit a customer support ticket if you would like MySQL 5.1 enabled on your servers.

2009-07-23

We have added the ability to connect directly to virtual server consoles/desktops using VNC. One may use either the Java applet provided in our control panels or any SSL-enabled VNC client of their choice. The Java applet and VNC connection details are provided in the Remote Desktop Control Panel.

This type of direct desktop/console access is important because it is outside the virtual server and does not depend on any aspect of the guest operating system. The virtual servers are accessible even if their networking is disabled. In fact, one may use these connections to reboot servers, safely reconfigure networking, and even install or upgrade operating systems.

2009-07-03

We've switched our site over to XHTML 1.0. We are using the Strict DOCTYPE to make any deviations from the standards more immediately noticeable, so if you see anything strange please let us know. We are currently serving the pages as MIME type text/html to all clients to avoid the XML validation. After a couple of months with HTML Validator not reporting any problems we will enable the application/xhtml+xml MIME type for compatible browsers.

We have also changed the character encoding on our entire site to UTF-8. This should help when performing tasks with non-Latin characters, such as dumping databases from the MySQL control panels. Previously our site would use ISO-8859-1, Shift_JIS, or UTF-8 depending on which internal framework the page uses (the older ao-web-framework or the newer aoweb-struts) and which language was active.

2007-10-09

You may now manage stored credit cards in order to configure them for automatic monthly payments or expedite manual payments. We have also developed a new payment form allowing the use of stored cards, connecting to the bank immediately for transaction results, and providing the option of storing cards during the payment process.

These forms run on top of a bank-independent Java payment processing API. This API simplifies the process of connecting to merchant services. It also allows applications to be developed against a consistent interface, while we provide connectors for different banks. This results in an application being able to switch merchant accounts quickly and easily.

If supported by the merchant services provider, the Java API enables securely storing credit cards and initiating transactions using the stored cards. This facilitates Payment Card Industry (PCI) compliance by eliminating the need to store credit card numbers for any reason. We use this mechanism for our stored card manager.

Finally, we will soon be providing merchant services to round-out our services. Combining our merchant services with these supported Java APIs will greatly simplify the process of obtaining merchant services and integrating card processing to applications. However, you can be assured of no vendor or provider lock-in because we provide the source code for the Java API, and the API is designed to allow applications to easily switch providers.

2007-06-16

We now support MySQL replication as an extension to our existing file-based fail-over systems. With this option, all files are replicated by scanning the filesystem periodically while MySQL database contents are replicated, near real-time, to the fail-over server(s). Transactions will typically be replicated within a second. This results in little or no transactional data loss in the event of a catastrophic hardware failure.

We have also developed a monitoring interface allowing our clients to see the current state of the MySQL replication(s).

Those who subscribe to Managed Servers may request this additional feature either during sign up or by requesting the option through our support channels.

2007-06-08
2006-11-03
2006-09-01
We have been performing operating system upgrades on all virtual hosting servers. The most significant change for customers is an upgrade to Apache 2.0. We will start upgrades of managed servers in November.
2006-04-17
We have added TXT entries to our DNS Control Panel in order to support SPF records.
2006-04-03
We have expanded our Web Sites Control Panel to allow the configuration of parameters and data sources on a per-context basis.
2006-03-03
We now support the latest MySQL 4.1 and 5.0.
2006-02-22
We have installed ZendOptimizer 2.6.2. It is not yet turned on by default. Those who would like to try it, please contact us to have it enabled. In our benchmarks, it provided about 25% more throughput.
2006-02-14
We now support the lastest PostgreSQL version 8.1.2. Anybody needing this version on either virtual hosting or managed servers, please contact us to have it configured.
2006-01-27
We have installed the latest of PHP 4.4 and PHP 5.1. We no longer support PHP 4.0, 4.2, 4.3, and 5.0. Those using now-unsupported versions have been upgraded.
2005-12-13
We have improved our firewall rules in three significant ways:
  1. All services must be registered with AO Industries and opened on our firewall prior to clients being able to connect. Previously, any service on ports above 1024 were allowed unless blocked. We have switched to a block-unless-allowed policy for all ports.
  2. All servers now route their packets through our firewalls, even when on the same network. Previously all servers on the same physical network had unfiltered access to other servers on the same physical network, where each physical network is comprised of servers of the same type (virtual, dedicated, managed, colocation, ...). Now, each server is isolated from one another by the firewalls just like they are isolated from other networks. This has somewhat reduced the efficiency of inter-server communication, but we believe the loss of efficiency is well worth the added security.
  3. We have restricted all outbound UDP traffic from all of our networks. If you need to provide of access any UDP service please contact us with the specific list of IP addresses and ports you will need to allow access to or from.
2005-12-04
We are happy to announce the installation and support of AWStats, Java 5, and Tomcat 5.5.

AWStats:

Many of you have noticed that we turned off Analog reporting a couple of months ago on some servers due to Analog causing high load averages. We have now integrated AWStats into our Control Panels. We have parsed all log files back about one year. You may see your reports in our HTTP Servers Control Panel, or at this URL:

/clientarea/control/httpd/AWStats.ao

Java 5:

Java 5 may be used for any existing application by updating your profile script to include /opt/aoserv-client/scripts/jdk1.5.0.sh. See this FAQ for more details on how to change Java versions:

/clientarea/FAQ.ao?category=jvms&page=profile

Tomcat 5.5:

New sites may now be created running Tomcat 5.5. We cannot upgrade existing sites automatically. So in the case of an upgrade please create a new installation (Web Sites Control Panel), install your content, test, and then switch the DNS settings to the new IP address.

2005-06-01
We have reduced the number of cache invalidation signals being sent from the AOServ Master to the AOServ Clients. Previously, certain API calls would result in all connected clients being notified of the update. This would result in all servers verifying their configurations concurrently, causing a short-term, high load on the master server.
2005-06-01
2005-06-01
We have completed our new Reseller Package Builder. This new tool allows our resellers to define custom packages. Once approved by AO Industries, the package definitions may be used for new accounts.
2005-05-19
As part of our operating system upgrades, we are now running SpamAssassin 3. SpamAssassin 3 will help us keep up with the latest efforts of bulk mailers.

We have also greatly improved the performance of the IMAP server when training the SpamAssassin Bayesian filters. Previously the IMAP server would directly call sa-learn, the SpamAssassin Bayesian filter training tool, and only complete its task when the sa-learn process completed. Now the IMAP server places a copy of the relevant messsages into a temporary directory, and another processes trains SpamAssassin in the background. As far as a user can distinguish, our modified IMAP server is now as fast as an unmodified server.

When an email inbox has its SpamAssassin integration mode set to "POP3", any emails considered to be junk by SpamAssassin will now have "*****SPAM*****" prepended to the subject lines.

The required_score may now be set on a per-inbox basis in either our Email Inbox Control Panel or WebMail Interface. Our default value of 3.0 is fairly aggressive. Individuals who want less chance of valid emails being flagged as junk may raise this value to 5.0 or 10.0.
2005-04-03
Upgraded our MySQL installation to MySQL-Max to support InnoDB and transactions.
2005-02-22
Our WebMail interface now supports nested IMAP folders and is more tightly integrated with our new SpamAssassin installation.
2005-02-22
We have now implemented SpamAssassin on all of our servers. We have also modified our IMAP server to automatically train the Bayesian filters for SpamAssassin based on email use. Please see our Anti-Spam FAQ for more details.

See What's New instead.
Copyright © 2000-2024 AO Industries, Inc.