Ubuntu | VirtualMin | Wordpress | Unable to update plugins, add items to menu | Permission problems?


I believe that I have searched long and hard and I haven’t found an answer to my issue I’m experiencing.

I have Virtualmin and Webmin installed on a VPS running Ubuntu 14.04 LTS. I have a Wordpress site running on Virtualmin successfully, but there appear to be some permission issues.

I cannot update any plugins, I am presented with a page requesting that I input FTP details.
I am also unable to add any items to any menus.

I have tried to set the user and group to the user defined in the virtual server in Virtualmin in the /var/www folder.
I have also tried to set the user and group to, www-data:www-data and root:root. With www-data:www-data set I am able to update plugins.

I am not sure where the issue may be, and I’ve spent quite a bit of time now trying to figure it out.

Please could you let me know what the problem may be?
Please let me know if you require anything to help.
I’d appreciate any assistance.

WP do not store any FTP details so you should not see that message. Long time ago i had similar problem with Centos 6 and if my life depends on it i cant remember exact problem but here is few tips what could help you:

  1. Check if owner and group of files inside public_html is set to virtual server admin. This could happen if you upload files and folders as root and then virtual server admin doesnt have rights to delete or change. Only root user dont have this limitations everyone else is locked to their files and folders.

  2. Check if admin for virtual server have FTP rights (it should have by default)

  3. Check if virtual server allows FTP. Do not mistake this for “ProFTPd virtual FTP” what can be found in Vmin - System Settings - Features and Plugins. You need this only for anonymous FTP and it should be disabled if not needed.

This is what comes in my mind right now. Follow my advice in same order as i posted.

I have tried to set the user and group to the user defined in the virtual server in Virtualmin in the /var/www folder.
In Centos Virtualmin is storing all virtual servers in “/home/virtual-server-name/”. You sure you dont have “home” directory with virtual servers inside?

Thanks for the reply.

Step 1:
I’ve set to my admin user of the virtual server.

Step 2:
The user has FTP rights.

Step 3:
The virtual server has FTP enabled. Am I correct if I assume IP-based virtual FTP should be enabled?

I have /home/virtual-server-name too. Is this a symlink to /var/www?

Please could you give me something else to try?

I appreciate your help!


The virtual server has FTP enabled. Am I correct if I assume IP-based virtual FTP should be enabled?

You don’t actually need that feature… that’s a rarely needed feature whose main purpose seems to be to cause confusion. I’ve personally never used it :slight_smile:

Your directories in /home shouldn’t be symlinks to /var… if they are, that could cause a problem.

Maybe we should back up a bit though –

Did you create a Virtual Server for this account? Your WordPress installation should be part of a Virtual Server located in /home/VIRTUAL_SERVER_OWNER/public_html.

If so, what PHP Execution Mode is that domain using? You can determine that in Server Configuration -> Website Options.

And lastly, what is the output of this command:

ls -la /home/VIRTUAL_SERVER_OWNER/public_html


There’s some permissions tricks that need to be done in order for mod_php to work, since that runs as the Apache user and not the Virtual Server owner.

The default PHP Execution Mode is FCGID, which is fast and runs as the Virtual Server owner, which would prevent permission issues… would it be possible to use that mode?


Thanks for the reply,

They aren’t symlinks.

In my /home directory I have a directory named after the virtual server owner, with public_html inside of it.

I did create a virtual server for the account.

PHP execution mode is : mod_php

Edit: The output of ls -la /home/VIRTUAL_SERVER_OWNER/public_html

Is all of my wordpress files and directories.


I’m sure it would be. Could you guide me through it? This isn’t a live site, so it can be made to work before going live.

It’s just a matter of going into Server Configuration -> Website Options, and selecting FCGID for the PHP Execution Mode.

Once you set that, it’ll be changed.

After changing that,see if it begins working for you.


Hi there,

Apologies for the late reply.

I have set the PHP Execution Method to CGI ( I didn’t have FCGID as an option) and now whenever I browse to the site I am presented with a download dialogue for a file called “download”

Please see the screenshot below of my Website Options page:


Hi andreychek,

I’d love some help! :slight_smile:

Resolved download issue by commenting out some lines in php5.conf.

Now, the site is returning 500 errors.

I’d appreciate some help!


Sorry for the delay!

When receiving those 500 errors, what shows up in the Apache error logs for that domain? Those would be in $HOME/logs/error_log.


I have in the meantime reinstalled Virtualmin and Webmin.

I now have the option of FCGId which I have set to enabled for the site.

I am having an issue now where when I attempt to preview the site. Then I get the error of


A password is required to access this web server. Please try again. "

Sorry to have changed the setup a little, but I needed to try and get the site working.


Hmm, so does that site require a password of some kind?

And are you able to access other sites using the Previer Website option?



Nope. It’s just a wordpress site. I’ve tried to upload a simple HTML site and it does the same thing.

Do you think that a reinstall of my VPS would be a better avenue to follow?

Are there other sites setup on your server at the moment? If so, does Preview Website work for them?


No other sites. Just one.