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.

Installing SilverStripe /

Getting SilverStripe up and running on your computer and on your web server.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

install on OpenSuse 11.1


Reply


5 Posts   2089 Views

Avatar
pcreso

Community Member, 3 Posts

14 February 2010 at 9:50am

I'm trying to install Silverstripe v2.3.6 on OpenSuse Linux v11.1 running on a PC at home, to learn something about using it (I'm in charge of a project implementing a Silverstripe based website at work, so figured this would be useful)

I'm technically moderately competent, DBA/GIS & basic web mapping , & running Linux for about 15 years now... but know next to nothing about the underlying setup of Apache, etc. Given the nature of a CMS, I'm not too concerned that an RPM for
OpenSuse doesn't exist, but the book & online docs for a Linux install are pretty much absent, assuming that someone trying to do what I am knows more than I do :-)

I have got the install page running, & enabled mod_rewrite for Apache, the install check says everything is OK.

When I click the install button, I get:

"Friendly URLs are not working. This is most likely because mod_rewrite isn't configured correctly on your site. Please check the following things in your Apache configuration; you may need to get your web host or server administrator to do this for you:

* mod_rewrite is enabled
* AllowOverride All is set for your directory
"

I'm assuming that if mod_rewrite is enabled, that is not the problem. So what is "my directory" & under Apache/OpenSuse, how should I set "AllowOverride All" for it?

I figure that it is in httpd.conf, & needs an entry something like this, (setting the root to pretty open & insecure, but hopefully working):

<Directory />
Options All
AllowOverride All
Order allow,deny
Allow from all
</Directory>

But I still get the same error...

Any advice appreciated....

Brent

Avatar
OwenW

Community Member, 45 Posts

14 February 2010 at 10:46am

Edited: 14/02/2010 10:47am

HI pcresco,

EDIT: Eep! Helps if I read your whole post before replying... :(

The problem will be in the main httpd.conf (or apache.conf). There will most likely be a code block that is similar to the following;

<Directory />
AllowOverride None
</DIrectory>

This directory block will be applying to the whole server context and will be preventing the .htaccess from working correctly. You can modify this line so that it says AllowOverride All, and then restart Apache.

Check also that there is not another Directory limiting /var/www/ and then you should be good to go.

Cheers
Owen

Avatar
pcreso

Community Member, 3 Posts

14 February 2010 at 11:55am

Thanks for the help Owen...

OpenSuse has a somewhat different Apache setup... I think...

docroot is /srv/www/htdocs

I have installed Silverstripe directly under this.

There are several apache *.conf files, with includes wrapping them together, which might simplify some things, but for someone with my level of ignorance, it just means there are more places to look :-(

In the file: /etc/apache2/default-server.conf

there is a section setting flags for <Directory "/srv/www/htdocs"> in a section with the commented out title
"# Configure the DocumentRoot"

This has a line: AllowOverride None

There is no (as yet) section setting up the Silverstripe directory.

With this line as it is, I get the error I described above.

If I change this to AllowOverride All (& restart Apache), then I get the Apache error (when trying to load the Silverstripe install.php file):

"Access forbidden!

You don't have permission to access the requested object. It is either read-protected or not readable by the server.

If you think this is a server error, please contact the webmaster.
Error 403"

Changing it back reverts to the previous error. I can't see why setting docroot to "AllowOverride All" would do this...

Suggestions ?

Thanks...

Avatar
pcreso

Community Member, 3 Posts

14 February 2010 at 12:05pm

Silverstripe is now running on this box.

I created a new <directory> section in /etc/apache2/default-server.conf for the Silverstripe directory with "AllowOverride All", set the docroot settings back to the default "AllowOverride None"

That seems to work. I guess Apache doesn't like opening up the docroot? If I knew enough to check the apache logs I figure I could confirm this, but I'm happy now it is going :-)

I suppose I should have done this in another file & included it, but this works, & is adequate for my purposes for now.

Cheers,

Brent

Avatar
Sean

Forum Moderator, 922 Posts

14 February 2010 at 6:21pm

Edited: 14/02/2010 6:23pm

It's probably for security reasons. Creating a new <Directory> directive and setting the AllowOverride option yourself is the best way. Alternatively, setting up a new site in the sites-available with specific configuration and enabling it with a2ensite is another way. That way you're not editing the apache2.conf file directly. Trouble with Apache is it's configured differently across different *nix platforms. ;-)