Quickly test various services using telnet

If you are attempting to diagnose mail on your server or VPS, you can quickly test POP3 without setting up an account in a mail program using telnet :

telnet server-name.com 110

USER email_address@domain.com

PASS unencrypted-password here


where email_address@domain.com is the pop3 login your are testing. Usually this is the same as the email address.


List should return the messages number or a single period if no messages are available

Note that in this test the password is unencrypted. You should set a temporary test password during the test.


Using geoip in .htaccess files / banning IP based on geographic region


I was wondering if you have any support for banning specific countries, such as geoip?


We do not support geoip by default due to the extra load it would add to every page request.

However you can use it or any other geographic based IP bans in your .htaccess files. Any tutorial for doing so should work fine on your account with us.

You can also upgrade to a Virtual Private Server (VPS) and install geoip support to the webserver on the VPS.

Why does my website run an old version of php?

Change php version control panel screenshot


I noticed my website is not running the latest version of php. Why not?


You can change your php version at any time by going to the php section of your control panel. Normally, we do not update your php version (other than for security patches) automatically in case your scripts rely a certain version being used. We do force minor revision upgrades that address security issues, etc.

In the past we kept all users up-to-date on the latest php versions but found that in many instances the major updates (from 4 to 5, 5.1 to 5.2 to 5.3, etc.) would break client sites. It was rare but happened enough for us to change our policy.

To summarize:

  • You can change your php version in the “php” section of the control panel
  • We perform security related upgrades automatically
  • Major version upgrades are not performed automatically. Instead, use the (one click) version update selector in the control panel

How are docroot’s for multiple domain hosting configured (document roots)


How are the domains on a phpwebhosting.com hosting account configured? Am I free to set the docroot / document root to whatever I like?


The way our system works is that you sign up with a username and then add your first domain.

By default the first domain goes in:


however you can change this if you would like.

Other domains you add can go pretty much wherever you like. Some people use things off their www like:


(this is not the best method to do things as your extra domains are then viewable as directories on your primary domain)

Other clients organize their domains like:




It is open-ended and should work with just about any method you prefer.

My access_log is filled with requests for scripts I don’t have. What’s going on?


I noticed that my access log has requests for things like wp-admin, phpmyadmin, phpbb, etc. – scripts that I do not have installed. The requests seem to come from all over the world and sometimes one right after another. What is going on? Do I need to be worried about this?


This is, unfortunately, normal. The entries may resemble:

"GET //phpmyadmin1/scripts/setup.php HTTP/1.1" 404 877 "-" "-"

These entries are attackers scanning to find servers they can exploit. You’ll see them scanning for most common web apps and scripts. As long as you don’t have a copy of the script they are looking for installed you are fine. Even if you do, you are good as long as your install is current.

Hackers know that popular scripts like WordPress, phpMyAdmin, phpBB, etc. have millions of installed instances. They also know that many users may install one of these scripts to test and then never use it again and worse, never update it. Once a security vulnerability is found in a particular version of a script, hackers use lists of randomly compiled domain names and start checking if each domain has the hackable version of the script installed.

You do not need to worry about these types of “scans” as long as you do not have old versions of scripts installed. We highly recommend that you remove or disable scripts that you no longer use and keep all scripts you do use up-to-date.

browser tries to download php

Browser tries to download php pages screenshot


Sometimes my browser tries to download or save php files from my website. What causes this? How can it fix it?


This can happen for a variety of reasons. However we frequently see it when a page is timing out. If you are connecting to a remote database make sure that the database is up and that dns is resolving correctly for it.

Adding Silverlight support to Apache (mime.types)


Do I need to make any changes for the Apache webserver to support Silverlight apps?


In most cases, no changes need to be made.

If you are having problems, try adding:

application/manifest manifest
application/xaml+xml xaml
application/x-ms-application application
application/x-ms-xbap xbap
application/octet-stream deploy
application/vnd.ms-xpsdocument xps
application/xaml+xml xaml
application/x-silverlight-app xap

to your mime.types file

Don’t forget to restart apache with:

/usr/local/apache/bin/apachectl graceful

after you make the change.

Linux Shell Host – What are my options?

phpwebhosting.com is a great choice for a Linux shell host. After you sign-up, put in a request for ssh and it will be enabled quickly (all new accounts need to be verified). All common unix shell tools are pre-installed and, best of all, the admins will install more for you on request. You also have compiler access so are free to do any custom installs into your account space.

Your account is a normal unix shell – no restricted shells here. subversion and git are both available for revision control. Background processes are allowed as long as they do not cause a problem for other users. Crontab is also available.

sftp gives the error “Received message too long”


sftp gives the error “Received message too long”


Check your .bashrc file. You likely have something in your .bashrc that is sending output and killing sftp. Most items that send output belong in .bash_profile.

The primary difference between .bashrc and .bash_profile is that .bashrc is used for non-interactive logins (sftp, etc.) and .bash_profile is used for interactive logins.

Keep your .bashrc free of anything that would send output.

I want to do some advanced things with my incoming mail – what are the restrictions? Explain your shell mail options more.


Are you familiar with hypermail? It is an archiving program. It takes email and puts it in a convenient html archive. What hypermail purportedly does is take mail from mbox and put it in the archive. It can’t be too complicated or difficult to configure and install. Do you know anything about it? Would it work on your servers?

Answer :

I am not very familiar with hypermail, but from what you describe the biggest problem would be that our mail server software (qmail – qmail.org) puts the messages in maildirs.

Another problem is that the maildirs are only accessible by the special user vpopmail. You can forward select addresses to your Linux shell mail account (your_username@your_server.phpwebhosting.com) and have direct access to the maildirs there to convert them to mbox format. However this becomes complicated and we are unable to provide technical support for it.

I would say the bottom line would be that if you enjoy messing with things a bit, you would be able to make it work. If you want it to just work right away, I would advise against it.

Underneath the control panel we attempt to provide as pure of a Linux shell account experience as we can. If you like developing in that environment then you can probably make what you want to work happen. However you would be on your own. We only are able to provide official support for the email configuration in the control panel (having said that, I personally send all my mail to the shell and read/manage my mail in a mbox-format with a shell mail reader – so it is possible).

I hope this has helped.