sb,
First, welcome to SitePoint.
Second, it's bad etiquette to hijack a thread - better to start your own.
Third, DirectoryIndex is an Apache core directive which needs a series of files WITHIN THE DIRECTORY which should be served (ordered by order of precedence, the first found will be the one served) so your / is a syntax error (which causes the 500 error status).
Finally, your mod_rewrite also has some major problems:
First, NEVER use an <IfModule> wrapper in an .htaccess file. Yes, WordPress used that but only to prevent nastygrams from "webmasters" who didn't realize that the module was not available. However, to use the <IfModule>, you'll be ABUSING the server by asking it to test module support several times for each and every file request. That always draws my Standard Rant #4:
[rant #4]The definition of an idiot is someone who repeatedly does the same thing expecting a different result. Asking Apache to confirm the existence of ANY module with an <IfModule> ... </IfModule> wrapper is the same thing in the webmaster world. DON'T BE AN IDIOT! If you don't know whether a module is enabled, run the test ONCE then REMOVE the wrapper as it is EXTREMELY wasteful of Apache's resources (and should NEVER be allowed on a shared server).
[/rant 4]
Then, since you've installed WP in a subdirectory, the RewriteBase handles the redirection to that subdirectory, i.e., do not include it in the redirection!
Code:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /panelcreative/staging/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .? /panelcreative/staging/index.php [L]
</IfModule>
# END WordPress
DirectoryIndex /index.php
Regards,
DK
Bookmarks