Encrypting IBM i ODBC Connections from Linux

ODBC with Db2 for IBM iSeveral clients have asked how to encrypt ODBC connections between Linux and IBM i to keep their Db2 data safe in transit.

To encrypt ODBC data, IBM recommends the industry-standard TLS encryption protocol (the successor to SSL).

Read more

Use IBM’s Apache Directive Finder Instead of Google

Apache HTTP Server ProjectWhen it comes to finding information on HTTP Server for IBM i (based on Apache), Google is NOT the way to go!

Recently Calvin did a web search for Apache’s ServerUserID directive. It returned old forum posts that could have taken anyone down a rabbit hole—a waste of time at best.

Read more

Easy Security Improvements for Apache Websites

Apache HTTP Server ProjectSome key security measures, such as using TLS encryption (https://) are taken for granted. Others are often missed until they are flagged by a security scan.

Here are two easy changes that have helped some of our clients reduce perceived vulnerabilities.  These changes, typically made in the Apache web server’s httpd.conf files, may stop unnecessary exposure of web server information, as well as satisfying security scanners.

Read more

Simplify with Subsystems

IBM iA major differentiator of the IBM i operating system is the use of subsystems to separate workloads, often for managing memory and optimizing performance. While those are still valid reasons for separating work into multiple subsystems, today’s large memory sizes and fast processors reduce the need to optimize performance in this way.

In this article, I’ll explain how subsystems can make today’s web-oriented application workloads much easier to manage. Read more

PHP 7.3 Enters End of Life Today—Free Upgrade Assessment

PHP on IBM iPHP 7.3 entered end of life today and will no longer receive fixes—including security fixes.

If you’re still running applications on PHP 5.4, 5.6 or 7.3 (run php -v to check), it’s time to schedule a free upgrade assessment.

PHP upgrades are easier now, thanks to IBM’s adoption of RPM-based open source packages. Over the past year, our clients have reported smooth and even enjoyable migrations to CommunityPlus+ PHP 7.4 and 8.0.

Read more

PHP 8.1 Released for IBM i

PHP 8.1 and IBM i

Good news everyone! In cadence with the release of PHP 8.1 by PHP.net last week, companies running PHP on IBM i can now download PHP 8.1 for use with their own applications.

According to this briefing with IBM i’s Open Source Business Architect, Jesse Gorzinski, staying current with PHP is a best practice for many reasons—for security and security audits, to fix deprecated code before you dig a huge technical debt hole, to keep your PHP environment running smoothly, and so on.

I’ll cover how to access the IBM i version of PHP 8.1 later in this post. First, though, let’s survey our favorite enhancements in this new release. We’re a big fan of PHP’s own release notes, so we recommend that you read them.

Read more

Speed Up Web Pages Using Apache’s mod_deflate

Apache HTTP Server ProjectWhen we do performance assessments for web applications running on HTTP Server (Powered by Apache) for i, one of the first things we do is enable a powerful Apache extension called mod_deflate. Just as zipping up files on your PC saves space and accelerates file transfers, mod_deflate compresses output from your server before sending it over your network.

Does it really work? My tests show a speed improvement of 10 to 50 percent!

Read more

Git for All Your Code

IBM i + GitGit has become the de facto standard for open source version control. Nevertheless, while your team may be using Git for open source code, your traditional IBM i programs and other code may use no version control at all, or be stuck in a repository that is difficult to access.

In this article, we’ll cover why you might want to move code to Git and suggest tools that make the move practical for IBM i teams.

Read more

Troubleshooting “already been bootstrapped” Message on IBM i

Setting up the open source environment on IBM i from Access Client Solutions (ACS) is usually easy, but sometimes you can run into problems. The most common error is when ACS claims that the environment is already set up (“bootstrapped”), when in fact it isn’t. Confusing!

Read more

Visual Studio Code, RPG and Code Coverage

This is the second post in my series on RPG and COBOL development using Visual Studio Code and Code for IBM i. Today’s topic is Code Coverage.

What is Code Coverage?

This stackoverflow answer explains precisely what Code Coverage is:

Read more