Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

Archive /

Our old forums are still available as a read-only archive.

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo

change the path for silverstripe-links?

Go to End

4 Posts   1590 Views


Community Member, 2 Posts

7 July 2008 at 7:59pm

is there an easy way to make silverstripe use another directory for internal links, than the directory it is installed in? For example: silverstripe is installed in "silverstripe_cms" - but instead of "/silverstripe_cms/home/" i want the links to use "/silverstripe/home/" ...


Forum Moderator, 5523 Posts

8 July 2008 at 12:55pm

You would need to write a custom .htaccess rewrite rule. Not for beginners but you might find these helpful

For your case you would need to do something like this. I think :P

RewriteRule ^(.*)/silverstripe/(.*)$    $1/silverstripe_cms/$2 [L,R=301]


Community Member, 2 Posts

8 July 2008 at 6:35pm

that's my problem - there is no mod_rewrite on the webspace i am currently working on (it's a cheap one and the hoster won't enable ist). Therefore i'm trying to find a way to run silverstripe without apache-urlrewriting.
is there someone who did this already or can you give me a little hint how to do it "the best way"? ;)


Administrator, 690 Posts

14 July 2008 at 6:09pm

Well, all of the URLs internally map to sapphire/main.php?url=(friendly url)

You could try making a small file such as p.php in your site root:

You could then access URLs:

The p.php script would need to be a modified version of main.php, that manually parses the contents of the $_SERVER variables and then passes control to Director::direct(). It would also need to do things like chdir('sapphire') to ensure that includes and relative file references work.

You would probably want to use something like Director::setBaseUrl("") to ensure that all the URLs matched up properly.

It's not going to a simple matter of flipping a switch, but it would be possible.