Adding manual directives for virtual server messes up further "Configure Website" attempts

Reproduction on Ubuntu 10.04.4 LTS + Virtualmin 3.90.gpl Virtual server has several users and 1 subserver

  1. Enable UserDir module (Webmin -> Servers -> Apache Webserver -> Global Configuration -> Configure Apache Modules -> Ensure "userdir" is selected, click "Enable Selected Modules"

  2. Return to Virtualmin and select first Virtual Server

  3. Open Services menu
  4. Configure Website
  5. Ensure that under "Virtual Server Options" it says "For [your virtual server]"
  6. Edit Directives
  7. Add the following lines to the bottom (substituting [virtual] for the virtual server admin account name) UserDir /home/[virtual]/homes/*/public_html UserDir disabled UserDir enabled [some user]
  8. Save
  9. Apply Changes

Now, repeat steps 2-5

The module gets "out of sync" and starts pulling random apache configuration files to edit, and gives a blank text space rather than the contents of the file. Click save now and lose data!

I'm seriously considering getting a subscription to the pro version, but this is a definite show-stopper for me. I have several snapshots of this VM and can reproduce the issue at will.

Please advise ;)

Status: 
Closed (fixed)

Comments

(Note that newlines got eaten and step 7 has three lines to append, each starting with "UserDir")

It actually appears that just the steps in Webmin is what screws things up... Enable some modules, apply changes, and this time I get "Virtual Server Options / For /server-status" before manually adding directives..

More digging... in lieu of using Webmin, I'm enabling modules from the shell, and it seems to trigger the same thing (after refreshing/relogging into Virtualmin).

Still digging...

How does Virtualmin enumerate the virtual server to pull the info?

Works - (but a vital mod disabled - authz_host ) Current link: https://services.beeze.com:10000/apache/virt_index.cgi?virt=339

root@hosting# sudo a2enmod authz_host

root@hosting# sudo /etc/init.d/apache2 restart

F5 in browser, now Link is the same id (339), but now it pulls up a random conf file

root@hosting# sudo a2dismod authz_host

root@hosting# sudo /etc/init.d/apache2 restart (won't restart since it's a required module)

and now Virtualmin is pulling the correct configuration file again!

root@hosting# sudo a2enmod authz_host

root@hosting# sudo a2dismod authz_owner

root@hosting# /etc/init.d/apache2 restart

..and now I have a working server with Virtualmin pulling the right configuration.

How does enabling a mod and starting apache screw this up? Is there something about changing the number of active modules that blows up Virtualmin? Is there an easy way to re-sync the virtual server to .conf file list?

Also note: going into Webmin -> Servers -> Apache Webserver, then clicking on the same virtual server takes me to the Configure Webserver page with the correct information.

I notice that the link has changed within Webmin, but accessing the same virtual server in Virtualmin is still returning the "older/outdated" link with incorrect information.

Persists across a server reboot as well.

Deleting the files in /etc/webmin/virtual-servers/links-cache/ seems to have resolved the issue (pulled out of another bug tracker).

Thinking there should be a way to invalidate this cache based on actions not currently caught? :)

Have a good day, folks... subscribing to Pro in short order :)

Thanks for your bug report... Jamie will be reviewing all that shortly :-)

Once the next Webmin and VIrtualmin releases come out, this will no longer be a problem - however, in the short term, clearing that links-cache directory will fix the problem.

Automatically closed -- issue fixed for 2 weeks with no activity.