Hi,
Apologies for this long post but I want to provide enough info for you, and I'm not sure what you'll need. I've been trying for a week to install WPMU-1.0-rc4 into a sub directory (/wpmu), choosing subdomains not subdirs. Instead of subdir /wpmu, the email links, .htaccess and database path fields contain /execscriptdir.
I've followed instructions in readme.txt file.
I've used ISP's control panel to add A DNS record, think that's OK. (I had to use prefix blank (not *)
as their control panel would not accept *.
Install appears to go OK. I can see database tables are created and populated. No error messages are received, and email arrives.
* Problem symptoms are *
1. "Created" Link provided in email (http://<name>.org.uk/execscriptdir/) generates the error message:
"Forbidden, perhaps you need to change the file permissions for this document or upload an index page."
Apache's error log records:
[Sun Sep ...] [error] [client...] attempt to invoke directory as script: /execscriptdir
2. Login: link in email (http://<name>.org.uk generates error message:
Internal Server Error, this is an error with your script, check your error log for more information.
Apache's error log records:
[Sun ...] [error] [client ...] Premature end of script headers: /execscriptdir/php.cgi
I've spent a lot of time in WPMU forum, but haven't been able to get to the point where I understand what's going wrong.
There are many similar posts, but I haven't found one that enables me to fix it.
* Things I have found out:*
1. Email uses unknown dir "execscriptdir" not /wpmu. It includes:
- "Your new WPMU site has been created at http://<domain>.org.uk/execscriptdir/"
- "Login: http://<domain>.org.uk/execscriptdir/wp-login.php"
2. I can see that execscriptdir also finds it's way into:
- Table wp_site, column path.
- Table wp_blogs, row blog_id 1, column path.
- .htaccess file that's created during install.
3. The .htaccess that's created includes execscriptdir in RewriteBase. It looks like this:
RewriteEngine On
RewriteBase /execscriptdir/
# Rewrite http://www.domain.com to domain.com
RewriteCond %{HTTP_HOST} ^www\.(.*)
RewriteRule ^(.*) http://%1/$1 [R,L]
#uploaded files
RewriteRule ^(.*)?/?files/(.*) wp-content/blogs.php?file=$2 [L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule . - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-.*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
4. The wp-config.php that's created includes a reference to execscriptdir, see below:
// ** MySQL settings ** //
define('DB_NAME', 'wordpress'); // The name of the database
define('DB_USER', 'wordpress'); // Your MySQL username
define('DB_PASSWORD', '<password>'); // ...and password
define('DB_HOST', 'localhost'); // 99% chance you won't need to change this value
define('VHOST', 'yes');
$base = '/execscriptdir/';
I've spent a lot of time checking wpmu installation forum but am starting to think less clearly now as this continues.
I guess the problem arises from host config. Host has a top-level directory /execscriptdir containing php.cgi and php5.cgi.
5. Site is in /home/d/g/dgilmour/public_html. Apache httpd.conf contains:
<Directory /domains/*/*/*/public_html>
AllowOverride All
# FollowSymLinks added to next line, WPMU needs. DRG 28-Aug-2006
Options IncludesNoExec ExecCGI FollowSymLinks
</Directory>
<VirtualHost 212.241.248.198:80>
ServerName exc-el2.org.uk
# ServerAlias http://www.exc-el2.org.uk *.exc-el2.org.uk
# ds3120 name used only for Control Panel access on 212.241.248.197:80 * DRG, 2-Sep-06 ***
# ServerName ds3120.dedicated.turbodns.co.uk
ErrorLog /var/log/error_log
CustomLog /var/log/sites_access_log ald
# *** temporary change, add line for debugging wpmu, DRG 2-Sep-06
LogLevel debug
# temporary addition for wpmu debug, ******************************** DRG, 30-aug-06
TransferLog /var/log/system_transfer_log
VirtualDocumentRoot /domains/%1.1/%1.2/%0/public_html
User nobody
Group sites
</VirtualHost>
6. execscriptdir is referenced in these parts of httpd.conf, in this order:
<IfModule mod_alias.c>
ScriptAlias /execscriptdir/ "/execscriptdir/"
</IfModule>
<IfModule mod_mime.c>
...
AddHandler php .php .php3 .php4
Action php /execscriptdir/php.cgi
...
AddHandler php5 .php5
Action php5 /execscriptdir/php5.cgi
</IfModule>
It's also referenced in a vhost for SSL, but I've proved that's not contributing by commenting it out.
Environment is:
PHP 4.4.2
FreeBSD 4.11-STABLE #7
MySQL client API version 4.1.19
Apache 1.3(.31?) I forget how to check..
I hope you can help. Thanks for taking the time to read.
Regards,
David