Installation in a Subfolder; Running from the Root Directory

Permalink
I've installed C5 in the root directory, however there are quite a few other folders in the root directory. These folders are for various other uses and cannot be moved. There's quite a few folders and it's kinda bulky.

I'd like to install concrete into the /concrete_cms folder, and run C5 when you accesshttp://mysite.com/

I moved the entire /concrete/ directory to to /concrete_cms/concrete/. Then I updated the .htacess file and site.php file to point to the new folder. Everything worked when I accessedhttp://mysite.com/concrete_cms....

Then I added another .htaccess file that should have redirectedhttp://mysite.com/ tohttp://mysite.com/concrete_cms,... but because there was no /index.php file, I got a 403 error.

I've looked at some other forums, but nothing seems to work. Has anyone else done this or have ideas about how to do it?

SkyBlueSofa
View Replies:
Mnkras replied on at Permalink Reply
Mnkras
what....

so you just moved the /concrete folder into a sub directory...? what exactly did you change
SkyBlueSofa replied on at Permalink Reply
SkyBlueSofa
I started with the standard folder structure:
/blocks
/concrete
/config
/etc..
/.htaccess
/index.php

Then I moved the entire concrete structure to a subfolder:
/concrete_cms
/concrete_cms/blocks
/concrete_cms/concrete
/concrete_cms/config
/concrete_cms/etc..
/concrete_cms/index.php

After this move, I added a new .htaccess file at the root level:
/concrete_cms
/concrete_cms/blocks
/concrete_cms/concrete
/concrete_cms/config
/concrete_cms/etc..
/concrete_cms/.htaccess
/concrete_cms/index.php
/.htaccess

Then I update the config/site.php with the following:
define('BASE_URL', 'http://mysite.com');
define('DIR_REL', '/concrete_cms');

The .htaccess file at the root level has the following code to point to the new subfolder if the requssted page does not exist:
# -- concrete5 urls start --
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ concrete_cms/index.php/$1 [L]
</IfModule>
# -- concrete5 urls end --

And the .htaccess file under 'concrete_cms' looks like this:
# -- concrete5 urls start --
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /concrete_cms/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
# -- concrete5 urls end --


This is the experience that I have:
* When I go to the root level of the site (mysite.com/), I get a 403 error.
* When I go to an existing page, 'About' at mysite.com/about, I get the site, but no images in the content. Images in the theme are okay.
* When I navigate from the 'About' page, the url now has 'concrete_cms' in it; eg: mysite.com/concrete_cms/blog
* When I go to mysite.com/concrete_cms, I get the home page without images in the content, but the images in the theme are okay

What I would like to happen:
* Access the root level of the site (mysite.com/) and get the home page
* Access the site with images in the content
* Access the site without the 'concrete_cms' folder showing in the URL
* Be able to go to mysite.com/someOldFolder and access the functionality within that folder. These folders need to be there for historical reasons.

I *can* keep the concrete structure at the root level, but I'd just like to clean it up a bit, if at all possible.

Are the .htaccess files incorrect? Is there something else I'm missing?
jincmd replied on at Permalink Reply
jincmd
have u figured this out?
DTriplett replied on at Permalink Reply
Try these instructions to use a modified index.php instead:
Install to a Subdirectory, Run from root (without patches or .htaccess)
http://www.concrete5.org/?cID=612245...
MortQ replied on at Permalink Reply
Does anyone know if there is a working link to this solution?http://www.concrete5.org/?cID=612245......
It keeps coming up in searches and in different threads, but this link appears to be dead, just seems to go to a log in page, and logging in does nothing.