Hi Guys, I've done a fresh install of Apache 2.2.4 with suPHP 0.6.2, Postfix 2.3.3, MySQL 5.0.27 for use with ISPConfig 2.2.15. I've managed to get this fully up and running with straight PHP (not suPHP), complete with setting up virtual sites etc, but with suPHP, although the system appears to work and there is web-based admin for ISPConfig, making changes does nothing. In fact, when I check, the file /etc/httpd/conf/vhosts/Vhosts_ispconfig.conf is completely empty. Anyone got any ideas where to start debugging this? Thanks in advance, Neil Hamilton Web Oureach
Thanks, but I had already seen that thread. All I have in /etc/httpd/conf/vhosts is a single, zero-length file called Vhosts_ispconfig.conf I also can't find a log file anywhere for ISPConfig - where does this live? It's all very wierd because my first install of this worked fine, I've obviously missed something very basic! Thanks, Neil
Please run: /etc/init.d/ispconfig_server restart and then modify the website again. Does the file get written now?
No, it doesn't. I tried this, with the following results: Code: [root@mail ~]# /etc/init.d/ispconfig_server restart Shutting down ISPConfig system... /root/ispconfig/httpd/bin/apachectl stop: httpd stopped ISPConfig system stopped! Starting ISPConfig system... /root/ispconfig/httpd/bin/apachectl startssl: httpd started ISPConfig system is now up and running! I tried making a change to a virtual host, but still no Vhosts_ispconfig.conf... I wonder if I should just deinstall and reinstall - maybe that would be easier! Thanks, Neil
Thanks Tim, That file did exist (sorry - I've not got used to where ISPConfig puts things yet!), and the last few lines read as follows: Code: 15.08.2007 - 09:00:19 => INFO - /root/ispconfig/scripts/lib/classes/ispconfig_system.lib.php, Line 728: /etc/rc.d/init.d/httpd restart &> /dev/null 15.08.2007 - 09:00:19 => INFO - /root/ispconfig/scripts/lib/classes/ispconfig_system.lib.php, Line 728: /etc/rc.d/init.d/postfix stop &> /dev/null 15.08.2007 - 09:00:19 => INFO - /root/ispconfig/scripts/lib/classes/ispconfig_system.lib.php, Line 728: /etc/rc.d/init.d/postfix start &> /dev/null 15.08.2007 - 09:00:21 => INFO - /root/ispconfig/scripts/lib/classes/ispconfig_system.lib.php, Line 728: /etc/rc.d/init.d/named restart &> /dev/null 15.08.2007 - 09:00:22 => INFO - /root/ispconfig/scripts/lib/classes/ispconfig_system.lib.php, Line 728: /etc/rc.d/init.d/proftpd restart &> /dev/null 15.08.2007 - 09:02:31 => INFO - Signalfile Set: insert 15.08.2007 - 09:04:39 => INFO - /root/ispconfig/scripts/lib/config.lib.php, Line 257: setquota -g web1 0 0 0 0 -a &> /dev/null 15.08.2007 - 09:04:39 => INFO - /root/ispconfig/scripts/lib/config.lib.php, Line 258: setquota -T -g web1 604800 604800 -a &> /dev/null 15.08.2007 - 09:04:39 => INFO - /root/ispconfig/scripts/lib/config.lib.php, Line 277: Connected successfully 15.08.2007 - 09:04:39 => WARN - /root/ispconfig/scripts/lib/config.lib.php, Line 279: Could not select database It's the last line that looks dodgy to me - almost like it's got a MySQL connection error. If that were the case though, surely I wouldn't be able to change the administrator password, create customers etc? It simply seems to be the bits that actually modify the live server configs that are failing. Could it be a setuid problem or something? Thanks, Neil
Hi there, Interesting! The script runs without error, but it takes a couple of minutes to run - this is on a reasonable spec system with a load average of zero. It doesn't push the load up when running either. This is the output: Code: [root@mail ~]# /root/ispconfig/php/php /root/ispconfig/scripts/writeconf.php start ende (incidentally, on a second run it was instantanous). That does indeed write out a new Vhosts_ispconfig.conf file, the directory listing is now: Code: [root@mail vhosts]# ls -al total 16 drwxr-xr-x 2 root root 4096 Aug 16 10:02 . drwxr-xr-x 3 root root 4096 Aug 13 17:12 .. -rw-r--r-- 1 root root 1790 Aug 16 10:07 Vhosts_ispconfig.conf -rw-r--r-- 1 root root 1790 Aug 16 10:07 Vhosts_ispconfig.conf~ But the config is still not getting written from the admin. Also, suphp isn't working - ownership is still wrong, which was my whole reason for re-installing ispconfig! There is a test script which writes a test file to /tmp and tells you the ownership: http://mail.weboutreach.co.uk/test.php Thanks again! Neil
Code: [root@mail ~]# ps aux | grep wconf root 26071 0.0 0.0 312 116 pts/0 R+ 13:38 0:00 grep wconf root 28137 0.0 0.1 4448 1036 ? S Aug15 0:00 /bin/bash /root/ispconfig/sv/ispconfig_wconf
Hi falko, thanks for all the help thus far. Here's the output: Code: [neil@mail ~]$ ls -la /home/admispconfig total 28 drwxr-xr-x 4 admispconfig admispconfig 4096 Aug 13 17:12 . drwxr-xr-x 6 root root 4096 Aug 13 17:03 .. -rwxr-xr-x 1 admispconfig admispconfig 24 Aug 13 17:12 .forward drwxr-xr-x 8 admispconfig admispconfig 4096 Aug 16 10:07 ispconfig drwxr-xr-x 2 admispconfig admispconfig 4096 Aug 13 17:12 mailstats -rwxr-xr-x 1 admispconfig admispconfig 176 Aug 13 17:12 .procmailrc
Looks ok. What's the output of Code: ls -la /home/admispconfig/ispconfig ? Also, I'm thinking about this error: Can you connect to MySQL like this: Code: mysql -u root -p and then run Code: SHOW DATABASES; ? Are all databases there, are some missing?
Hi Falko, You might have hit on something here - I think it might be as simple as me having configured the wrong MySQL username and password. If I log in to the MySQL (command line) with the username and password I specified in the script, and try to select the "mysql" database (which is what line 279 seems to be doing) it gives me an access denied error: Code: [root@mail web]# mysql -uXXXX -pYYYY Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 807 to server version: 5.0.27 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> use mysql ERROR 1044 (42000): Access denied for user 'admin'@'localhost' to database 'mysql' although it didn't complain during the setup script, and seems to have created the database. So this may or may not be related. For ref, that username and pass can access the ISPConfig database fine. For reference then, what username and pass should I specify when installing ISPConfig? The root one, or the one for the new database? Here is the output you asked for by the way: Code: [root@mail web]# ls -la /home/admispconfig/ispconfig total 68 drwxr-xr-x 8 admispconfig admispconfig 4096 Aug 18 11:13 . drwxr-xr-x 4 admispconfig admispconfig 4096 Aug 13 17:12 .. -rw-r--r-- 1 admispconfig admispconfig 14 Aug 13 17:12 adminmail.txt drwxrwx--- 2 admispconfig mysql 4096 Aug 13 17:12 backup drwxr-xr-x 4 admispconfig admispconfig 4096 Aug 13 17:12 files -rw-r--r-- 1 admispconfig admispconfig 20509 Aug 18 11:13 ispconfig.log drwxr-xr-x 6 admispconfig admispconfig 4096 Aug 13 17:12 lib -rw-r--r-- 1 root root 1065 Aug 13 17:12 sysconf.txt drwxr-xr-x 2 admispconfig admispconfig 4096 Aug 13 17:12 temp drwxr-xr-x 8 admispconfig admispconfig 4096 Aug 13 17:12 tools -rw-r--r-- 1 root root 303 Aug 13 17:12 users drwxr-xr-x 15 admispconfig admispconfig 4096 Aug 13 17:12 web How much do you know about suphp and ISPConfig by the way? Thanks again, Neil
Hi Falko, I think I was right here - very simple thing, but supplying the root MySQL user/pass worked and adding/deleting vhosts works fine! Thanks for all your input. I still have a problem with suPHP, but I'll post about that in a separate thread to make it easier for the nice search engines to crawl all over it ;-) Thanks, Neil
Just a final note on this in case it helps anybody else, I think where I was going wrong was that I didn't understand why Vhosts_ispconfig.conf was not being created. As far as I can tell, ISPConfig seems to work in this way - please correct me if I'm wrong: When you make a change, ISPConfig backs up the old config, writes Vhosts_ispconfig.conf and tests the configuration using httpd -t. If that doesn't work, it reverts back, so in otherwords, if your Vhosts_ispconfig.conf isn't being written, something is wrong somewhere in the apache configuration. The answer is to rename the latest dated Vhosts_ispconfig.conf_??? file to Vhosts_ispconfig.conf and run httpd -t manually. Hope that helps somebody.