Issue

Browsers are now blocking port 10080, which is the default application port for some installations of Zend Server.  This will prevent browsers from displaying pages served by Zend Server using this port.  There are some other ports blocked in browsers for this reason, but at this time they are not likely to be in use by our customers.  Here is a list of the ports blocked by Chrome and Firefox to protect against Slipstream: 

69 – TFTP

137 – NetBIOS Name Service

161 – SNMP

554 - RTSP

1719, 1720 – VoIP (H.323)

1723 – PPTP

5060, 5061 – SIP

6566 – SANE network scanner

10080 - AMANDA (Advanced Maryland Automatic Network Disk Archiver)

Browser providers may choose to block more ports in the future.

These instructions are specific to the Application port in Zend Server.  If in the future we need to change the Admin User Interface (10081) or User Server (10083) ports, we will need to provide more specific instructions for those ports.

Environment

Zend Server 6 or later, running on any supported version of IBM i.  Versions 9 and later may not be affected for customers who installed these versions side by side with an earlier version. 

Resolution

You only need to do this if Zend Server uses port 10080

Versions 9 and later of Zend Server may not be affected for customers who installed these versions side by side with an earlier version.  New versions installed along side an existing version will use alternative ports to avoid conflicts.  You do not need to do anything if your installation of Zend Server does not use port 10080.

Step 1 - Find a new port to use

You will need a new port number to replace 10080.  You will not want to use the Zend Server reserved ports 10081, 10082, or 10083.  You also will not want to use the ports listed above that browsers are currently blocking.  You can use most ports, as long as they are not already in use.  As an example, you might choose port 10085, the port we will be using in the example.  The following article can help you determine if the port you choose is already in use:

Verify available ports for Zend Server for IBM i

A more detailed discussion for choosing an available port can be found on this blog post:

Find an available port

The blog post discusses how to avoid standard port assignments.  This may be important in the future.  We can see many of the ports already blocked for Slipstream are standard ports.  This implies others added in the future may also be standard ports.  For this reason, and just as a good practice, standard ports for other uses should be avoided when choosing a new port for your web site.

Step 2 - Edit your Apache configuration to use your chosen port

Please find this file and make a back up copy before editing it:

For version 8.5 and earlier:

/www/zendsvr6/conf/httpd.conf

For versions 9 through 2019:

/www/zendphp7/conf/httpd.conf

For versions 2020 and 2021:

/www/zendphp74/conf/httpd.conf

Once you have the file backed up, please open it in a code safe editor like Notepad ++ or Zend Studio.  Look for some code that looks similar to this near the top of the file.  It may vary slightly for different versions, and may have been modified for your specific usage:

Listen *:10081
NameVirtualHost *:10081
Listen *:10080
NameVirtualHost *:10080
DocumentRoot /www/zendphp7/htdocs

DefaultFsCCSID 37 
CGIJobCCSID 37    

<VirtualHost *:10080>
 Include /usr/local/zendphp7/etc/sites.d/zend-default-vhost-10080.conf
</VirtualHost>

Notice that the string '10080' appears four times.  We will only change it in three places.  The last appearance of '10080' is part of a file name, and should not be changed.  So, in our example, we will use port 10085, and the changed code will look like this:

Listen *:10081
NameVirtualHost *:10081
Listen *:10085
NameVirtualHost *:10085
DocumentRoot /www/zendphp7/htdocs

DefaultFsCCSID 37 
CGIJobCCSID 37    

<VirtualHost *:10085>
   Include /usr/local/zendphp7/etc/sites.d/zend-default-vhost-10080.conf
</VirtualHost>

Notice that the lines that contain '10081' are NOT changed, we only want to change '10080'.  Also, please notice that the line that starts with "Include" is not changed.  The string '10080' is part of the included file name.  If we change the file name here, the file will not be found.

A common modification you may encounter is that the asterisk in the IP addresses may be replaced by a specific IP address.  This is done to limit the directives to a specific IP address.  So instead of '*:10080' you might see it with some IP address like '192.168.17.10:10080'.  That IP address is just an example, it might be any valid IP address.  At any rate, just go ahead and change the port like '192.168.17.10:10085' .

If your file looks very different from what is shown here, and you are not certain what to do, please stop here and get some help.

If your file looks very different from what is shown here, and you are not certain what to do, please stop here and get some help.  Zend Support or your PHP application vendor can assist.  It is important to not make changes to this file that you do not understand.

If you have made your changes, please save your file and restart Zend Server.

Step 3 - Verify your web site works using the new port

Go into the browser that would not serve your page at port 10080 and verify that the page serves successfully from port 10085.  For example, if the address you were trying to reach previously was this:

http://www.zend.com:10080

You would just change it to:

http://www.zend.com:10085

This should get you past any errors about the site being restricted by the browser.  This might be all you need to do.  But there may be more, if your application has hard coded URLs that use 10080.  Please continue to the next step.

Step 4 - Review your application code for references to port 10080 and thoroughly test you web site

This task needs to be performed by the developers who maintain your PHP application code.  This might be an in-house developer on your staff, a third party consultant or PHP application provider, Zend Professional Services, or any other person or company who provided your PHP code.  The code chould be checked for any references to pages or web services on your site that may include the port 10080.  All of these references will need to be changed to use the new port you chose.  The developers should also test the web site thoroughly to make sure everything is working as expected after the port change.

Step 5 - Notify your end users to use the new port

Your customers and/or coworkers who use your web site will need to know that the port has changed.  They will need to know to type in the new port, and will need to adjust their bookmarks to use the new port.


  • No labels