मुझे वेब रूट डायरेक्टरी के बाहर सिम्लिंक का पालन करने के लिए अपाचे नहीं मिल सकते हैं, भले ही अनुमति ठीक लगे और फॉलोस्माइंलिंक चालू हो। विवरण नीचे हैं।
मेरे पास दो विश्व-पठनीय पाठ फ़ाइलें हैं: /tmp/hello
और /var/www/html/hello
। Webroot में भी मुझे उन दोनों फाइलों के लिए सहानुभूति है। दोनों ठीक लग रहे हैं।
$ ll /tmp
drwxrwxrwt. 27 root root 4096 Jul 8 13:55 ./
dr-xr-xr-x. 23 root root 4096 Jul 4 23:24 ../
-rw-r--r--. 1 root root 6 Jul 8 13:55 hello
$ ll /var/www/html
drwxr-xr-x. 3 root root 4096 Jul 8 13:56 ./
drwxr-xr-x. 6 root root 4096 Apr 4 12:57 ../
-rw-r--r--. 1 root root 20 Jul 8 14:03 hello
lrwxrwxrwx. 1 root root 5 Jul 8 14:04 link-local -> /var/www/html/hello
lrwxrwxrwx. 1 root root 10 Jul 8 13:56 link-tmp -> /tmp/hello
$ cat /var/www/html/link-local
/VAR/WWW/HTML/HELLO
$ cat /var/www/html/link-tmp
/TMP/HELLO
Apache वेब रूट के लिंक का अनुसरण कर सकता है:
$ curl http://localhost/link-local
/VAR/WWW/HTML/HELLO
लेकिन अपाचे सिम्कलिन का पालन नहीं करेगा /tmp/
:
$ curl http://localhost/link-tmp
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /hellolink on this server.</p>
<hr>
<address>Apache/2.2.15 (CentOS) Server at localhost Port 80</address>
</body></html>
यह CentOS 6 पर है; http उपयोगकर्ता अपाचे, समूह अपाचे के रूप में चलता है।
ये क्यों हो रहा है? मेरे द्वारा यह कैसे किया जा सकता है?