Как использовать символические ссылки с PHP и Nginx (или Lighttpd)?

Я установил Nginx + FPM-PHP под Debian и ArchLinux. Оба работают нормально. Однако я не могу понять, как заставить PHP-часть следовать символическим ссылкам. Я тоже пробовал с Lighttpd, но безрезультатно.

Вот что я хочу сделать:

  1. Корневой каталог настроен как обычно: /srv/http
  2. Символические ссылки из каждого проекта на /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 и т. Д., Включая жесткое кодирование в него другого каталога, чтобы убедиться, что это (или нет) причина проблемы.

Итак, вот вопросы:

  1. Можно ли использовать символические ссылки для выполнения PHP под nginx или lighttpd?
  2. Эта настройка только для разработки, есть ли причина не использовать ее?
  3. Какая магия была бы необходима, чтобы она работала?

Поскольку целевой средой будет nginx (есть другие проекты, которые уже работают), я бы хотел использовать nginx для разработки, если это возможно. Ради скорости я бы тоже использовал lighttpd. Я хотел бы избежать Apache (только из-за ресурсов), если это возможно.

0 ответов

Другие вопросы по тегам