0

I'm trying to use Envoyer.io to deploy my code and I'm running into some issues.

This utility makes two folders, current and releases. current symlinks to latest release in the releases folder.

So my directory structure looks like this:

  • public_html
    • current - symlinked to releases/{release_id}
    • releases
      • {release_id}
        • public
        • (other contents)

I need all requests to go to the current/public directory, making this the webroot, as opposed to public_html.

I have tried the obvious option of setting my webroot to public_html/current/public, but I am then faced with the error: Symbolic link not allowed or link target not accessible: /home/mysite/public_html/current

I have attempted variations of Options +FollowSymLinks in my .htaccess file with no luck here. I believe I am unable to access the Apache conf files, since this is a shared host.

I would appreciate any guidance on this matter.

1 Answer 1

0

I can't help repeating myself:

Most people who use .htaccess and ask about it on ServerFault should not be using .htaccess in the first place as that is an end-user solution never intended for administrators:

You should avoid using .htaccess files completely if you have access to httpd main server config file. Using .htaccess files slows down your Apache http server. Any directive that you can include in a .htaccess file is better set in a Directory block, as it will have the same effect with better performance.
More in the Apache manual

To be able to use the FollowSymlinks directive in a .htaccess file the main server config needs to allow that by either setting AllowOverride All or when a slightly less generous setting is used the option needs to be explicitly enabled with with an AllowOverride Option=FollowSymlinks directive as it is not part of the default groupings of AuthConfig, FileInfo, Indexes or Limit.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .