Как использовать символические ссылки с PHP и Nginx (или Lighttpd)?
Я установил Nginx + FPM-PHP под Debian и ArchLinux. Оба работают нормально. Однако я не могу понять, как заставить PHP-часть следовать символическим ссылкам. Я тоже пробовал с Lighttpd, но безрезультатно.
Вот что я хочу сделать:
- Корневой каталог настроен как обычно: /srv/http
- Символические ссылки из каждого проекта на /srv/http (пример: /home/user/projects/site1 на /srv/http/@site1) таким образом, что для тестирования локальной разработки мне просто нужно добавить имя сайт по URL:
"http://localhost/site1/xyz"
или же"http://localhost/site2/abc"
, так далее;
Я могу заставить его работать (после исправления разрешений) с html и другими статическими файлами, но всякий раз, когда есть сценарий PHP, я получаю известную ошибку "Основной сценарий неизвестен". Внутри каталога "настоящий корень" (/srv/http) такой ошибки нет. Но когда я попытался скопировать подкаталог в другое место (например, /home/user/projects/xyz) и поставить ссылку на него в / srv / http /, я получил эту ошибку.
Я следовал многим урокам, в том числе отличным постам датского парня. Но я не могу заставить это работать. Я пытался использовать все комбинации "fastcgi_param SCRIPT_FILENAME", ALIAS и т. Д., Включая жесткое кодирование в него другого каталога, чтобы убедиться, что это (или нет) причина проблемы.
Итак, вот вопросы:
- Можно ли использовать символические ссылки для выполнения PHP под nginx или lighttpd?
- Эта настройка только для разработки, есть ли причина не использовать ее?
- Какая магия была бы необходима, чтобы она работала?
Поскольку целевой средой будет nginx (есть другие проекты, которые уже работают), я бы хотел использовать nginx для разработки, если это возможно. Ради скорости я бы тоже использовал lighttpd. Я хотел бы избежать Apache (только из-за ресурсов), если это возможно.