Solved

Symlink between multiple domains on PLESK 8.1 (Linux)

Posted on 2007-03-22
8
1,642 Views
Last Modified: 2008-01-09
Hey Experts!

I'm in a situation where I need to create a symlink from one domain to another in PLESK 8.1.  Althought the symlink is properly created, I keep getting a FORBIDDEN error from Apache when trying to access files which should  be accessible through the symlink.

I'm guessing this is a chown issue where Apache is locked down by PLESK to not allow symlinks between domains.

Does anyone know a simple way around this?  If so, are there serious security implications to your suggested change?

Thanks a lot!

Brendan
0
Comment
Question by:brendanwov
  • 3
  • 3
8 Comments
 
LVL 27

Expert Comment

by:Nopius
Comment Utility
There is an option in httpd.conf to allow following symlinks:
Options FollowSymLinks
Without this option following symlinks is forbidden.
Read here: http://httpd.apache.org/docs/2.0/mod/core.html#options

What is the exact error text? Please provide the error line from apache error_log file.
0
 

Author Comment

by:brendanwov
Comment Utility
Hey Nopius!

Thanks for your quick reply.  Here is how my httpd.conf file is currently configured...

<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>

Can you give me the exact syntax of what I need to change in order to allow symlinks between domains?

I look forward to your reply.  Thanks!

Brendan
0
 

Author Comment

by:brendanwov
Comment Utility
Hey Nopius!

Just to be sure you have all the information you need...

# Each directory to which Apache has access can be configured with respect
# to which services and features are allowed and/or disabled in that
# directory (and its subdirectories).
#
# First, we configure the "default" to be a very restrictive set of
# features.
#
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>

#
# Note that from this point forward you must specifically allow
# particular features to be enabled - so if something's not working as
# you might expect, make sure that you have specifically enabled it
# below.
#

#
# This should be changed to whatever you set DocumentRoot to.
#
<Directory "/var/www/html">

#
# Possible values for the Options directive are "None", "All",
# or any combination of:
#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important.  Please see
# http://httpd.apache.org/docs-2.0/mod/core.html#options
# for more information.
#
    Options Indexes FollowSymLinks

#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   Options FileInfo AuthConfig Limit
#
    AllowOverride None

#
# Controls who can get stuff from this server.
#
    Order allow,deny
    Allow from all

</Directory>


I look forward to your reply.  Thanks!

Brendan
0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 
LVL 27

Expert Comment

by:Nopius
Comment Utility
It looks that you have required option. Now I need to see what Apache says in /var/www/logs/error_log (I belive it's correct path), just try to access symlinked domain then copy-paste the output from:

tail -20 /var/www/logs/error_log

0
 

Author Comment

by:brendanwov
Comment Utility
Hey Nopius!

I triggered the error and then viewed the log files and there didn't seem to be any errors listed within the most recent 20 minutes.  So I don't think this error is registering.  To calrify, the log file you suggested I tail didn't exist so I used the command below.

tail -50 /var/log/httpd/error_log

Thanks for your help!  What do you suggest?  Let me know.

Brendan
0
 
LVL 27

Accepted Solution

by:
Nopius earned 500 total points
Comment Utility
If you get 'forbidden' then _very_ likely there are some logs about your access attempt. Maybe not in this file. May be in /var/log/httpd/access_log (try tail that file).

Or you may have different logfiles for different domains. To check it, run
grep -i errorlog httpd.conf
and post results here.

If there is nothing either in access_log or in error_log (or in all logs for all domains if you have separate), then probably 'forbidden' comes not from Apache or your server, but from some kind of proxy between you and Apache. Please provide what exact error message your browser says.

0

Featured Post

Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Introduction As you’re probably aware the HTTP protocol offers basic / weak authentication, which in combination with the relevant configuration on your web server, provides the ability to password protect all or part of your host.  If you were not…
Hi, in this article I'm going to teach you how to run your own site, and how to let people in (without IP). I'll talk about and explain each step... :) By the way, everything in this Tutorial is completely free and legal. This article is for …
This video discusses moving either the default database or any database to a new volume.
This video explains how to create simple products associated to Magento configurable product and offers fast way of their generation with Store Manager for Magento tool.

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now