Ссылка на PHP-скрипт в другом каталоге user / home: «Входной файл не указан»

1

Я запускаю virtualmin с apache2 на debian wheezy и стандартном PHP 5.3 и fastcgi

У меня есть веб-сайт, который вызывает символическую ссылку, указывающую на php файл в другом домашнем каталоге пользователя

so/home/user1/public_html/adserving/имеет символическую привязку к /home/user2/public_html/

Проблема в том, что если я напрямую прихожу к файлу php user2, он работает, но если я получаю доступ к нему через symlink, он просто выплевывает "No input file defined" (я думаю, fastcgi не находит путь к файлу?)

Это мой php5.fcgi для пользователя2:

#!/bin/bash
PHPRC=$PWD/../etc/php5
export PHPRC
umask 022
export PHP_FCGI_CHILDREN
PHP_FCGI_MAX_REQUESTS=99999
export PHP_FCGI_MAX_REQUESTS
SCRIPT_FILENAME=$PATH_TRANSLATED
export SCRIPT_FILENAME
exec /usr/bin/php5-cgi

Это мой apache conf для этого виртуального сервера: <

VirtualHost XXXXXXXXXXX:80>
SuexecUserGroup "#1012" "#1012" 
ServerName adserve.com
ServerAlias www.adserve.com
ServerAlias webmail.adserve.com
ServerAlias admin.adserve.com
DocumentRoot /home/adserve/public_html
ErrorLog /var/log/virtualmin/adserve.com_error_log
CustomLog /var/log/virtualmin/adserve.com_access_log combined
ScriptAlias /cgi-bin/ /home/adserve/cgi-bin/
DirectoryIndex index.html index.htm index.php index.php4 index.php5
<Directory /home/adserve/public_html>
Options -Indexes +IncludesNOEXEC +FollowSymLinks +ExecCGI
allow from all
AllowOverride All Options=ExecCGI,Includes,IncludesNOEXEC,Indexes,MultiViews,SymLinksIfOwnerMatch
AddType application/x-httpd-php .php
AddHandler fcgid-script .php
AddHandler fcgid-script .php5
FCGIWrapper /home/adserve/fcgi-bin/php5.fcgi .php
FCGIWrapper /home/adserve/fcgi-bin/php5.fcgi .php5
</Directory>
<Directory /home/adserve/cgi-bin>
allow from all
AllowOverride All Options=ExecCGI,Includes,IncludesNOEXEC,Indexes,MultiViews,SymLinksIfOwnerMatch
</Directory>
RewriteEngine on
RewriteCond %{HTTP_HOST} =webmail.adserve.com
RewriteRule ^(.*) https://adserve.com:20000/ [R]
RewriteCond %{HTTP_HOST} =admin.adserve.com
RewriteRule ^(.*) https://adserve.com:10000/ [R]
RemoveHandler .php
RemoveHandler .php5
php_admin_value engine Off
IPCCommTimeout 31
FcgidMaxRequestLen 1073741824
</VirtualHost>

(домен adserve.com является просто заполнителем)

Любые советы о том, как решить проблему разрешения пути fcgi (если это действительно проблема)?

благодаря

  • 0
    Не PHPRC=$PWD/../etc/php5 ли PHPRC=$PWD/../etc/php5 ? Разве это не неправильно при доступе по символической ссылке? (Я не делаю php, так что я могу быть совершенно не уверен в этом.)
  • 0
    Вы проверили свои разрешения? потому что вы пытаетесь получить доступ к файлам user1 с user2, а suexec не разрешит этого.
Показать ещё 1 комментарий
Теги:
fastcgi
symlink

1 ответ

0

Я, наконец, смог решить проблему, разрешив разрешения на весь путь обхода к файлу, к которому я пытался привязать symlink. Он должен полностью читать и выполнять доступ по всему пути для работы по назначению

Благодаря тому, что помогло

Ещё вопросы

Сообщество Overcoder
Наверх
Меню