URL Rewriting with Apache Web Server

Apache HTTP Server ProjectThe Apache web server—included on IBM i as HTTP Server for i—contains a powerful feature known as mod_rewrite that can convert URLs (API or Web) from their original versions to any format you need.

This article offers a small taste of what URL Rewriting can do.

Read more

PHP 8.3 for IBM i Released in Seiden CP+ PHP

PHP on IBM iLast week the IBM i community got PHP 8.3, the newest version, via Seiden’s CP+ PHP.

While PHP 8.3 has valuable updates, PHP 8.0 and lower are no longer receiving even security fixes, increasing your risk of issues with security and certainly with your next security audit. Contact Alan for a free upgrade assessment.

PHP 8.3’s new features include json_validate. You’ll find the full list of changes and supporting details at PHP.Watch.

Read more

Use grep to Search IBM i Source Members (RPG, CL, COBOL, more)

Updated: January 4, 2024

From the Seiden SmartSupport mailbag:

One issue I keep coming across is the inability to search for text in source members across all libraries. We use a commercial tool, but it is expensive and cumbersome. Coming from the Linux world, where I can “grep” for anything, I find this a ridiculous restriction.

Read more

IBM i Modernization Seminar at IBM France

On December 5, 2023, Alan joins fellow IBM Champions Koen Decorte and Charles Guarino at IBM France for a day-long seminar and networking event focused on IBM i modernization, AI, Business Intelligence (BI), and cyber resilience.

Sponsored by IBM and CD-Invest, the seminar agenda balances educational sessions with opportunities to ask questions and have informal discussions with the presenters and fellow attendees.

Read more

Rebuilding the Tomcat Plugin in IBM i 7.5

Apache Tomcat on IBM iOpen source saves the day once again.

When one of our open source support clients discovered that Tomcat plugin for Apache was not supported on their test IBM i 7.5 system, they needed a solution. They relied on Tomcat to serve their Java web applications.

Read more

PHP 8.3: How the Community Helps PHP Evolve

The inclusion in PHP 8.3 of two enhancements by Seiden Group’s own Calvin Buckley* inspired me to write this post.

PHP is moved forward by its community. Each year there is a new major release with enhancements, each month a maintenance release. PHP 8.3 is another achievement in the steady cycle of improvements.

Here are some key resources for understanding how the PHP language is built and enhanced.

Read more

Older 32-Bit PHP & PASE Apps Can Break in IBM i 7.5

This alert was originally published in Seiden Group’s July 2023 Support Bulletin.
Seiden Group’s CP+ PHP fully supports IBM i 7.5.

IBM i 7.5 includes OpenSSL 1.1.1, an upgrade that can disable older PASE applications that were tied to 1.0.2 or earlier.

Read more

VS Code for IBM i Repositories

VS Code for iThose of us who help support Code for i, the popular IDE for IBM i based on VS Code, often need to look at the code that makes it work.

Fully open source, the code that runs Code for i is available on Github repositories. From there, the code can be viewed and even enhanced by the public.

Read more

IBM i Apache Security Setting: RequestReadTimeout

Apache HTTP Server ProjectA client asked for help addressing a Denial of Service (DoS) vulnerability that their security company discovered. The company found it could slow down the Apache web server by sending it incorrect headers. By sending an artificially high “Content-Length” header, they caused the web server to wait for data that would never come.

Read more

IBM i Apache Directives Measure Request Speeds

Apache HTTP Server ProjectSpeed is critical when serving APIs and web pages from IBM i. How can we measure our speed? The IBM HTTP Server (powered by Apache) for i can log the speed of each request, but this capability needs to be turned on.

Default values in the Apache access log include the request’s URL, the HTTP status code, size of the response in bytes, and the user agent (e.g. browser type), but not how long the request took. Let’s see how to add the timing.

Read more