Как создать символическую ссылку на другой сайт или папку в Fastpanel?

Здравствуйте! <br/> Я использую Faspanel на Ubuntu 22. <br/> <br/> Создал два сайта, у которых одинаковые домены: <br/> site.ru <br/> m.site.ru <br/> <br/> В директории /var/www/fastuser/data/www у меня находятся соответствующие папки. <br/> <br/> site.ru является основным сайтом, и он построен на Laravel. <br/> <br/> Как мне настроить m.site.ru так, чтобы при его открытии отображался контент site.ru, но без перенаправления на основной домен? <br/> <br/> Я знаю, что это можно настроить через алиасы в Fastpanel, но этот способ мне не подходит. <br/> <br/> Я также попробовал создать символическую ссылку в Linux с помощью команды: <br/> ln -s /var/www/fastuser/data/www/site.ru /var/www/fastuser/data/www/m.site.ru <br/> Однако в результате получаю ошибку 403, хотя в файловом менеджере ссылка отображается и работает.
  • 25 ноября 2024 г. 19:03
Ответы на вопрос 1
Чтобы создать символическую ссылку на другой сайт в Fastpanel и избежать ошибки 403, нужно учитывать несколько факторов. 

1. **Права доступа**: Убедитесь, что права доступа на папку, на которую вы ссылаетесь, позволяют веб-серверу (например, Nginx или Apache) получить к ней доступ. Для этого выполните команду:

   ```bash
   sudo chown -R www-data:www-data /var/www/fastuser/data/www/site.ru
   sudo chmod -R 755 /var/www/fastuser/data/www/site.ru
   ```

   Замените `www-data` на пользователя и группу, под которыми работает ваш веб-сервер.

2. **Создание символической ссылки**: После проверки прав доступа попробуйте создать символическую ссылку снова. Ваша команда выглядит правильно, но я предлагаю использовать адрес с относительным путем. Например:

   ```bash
   ln -s ../site.ru /var/www/fastuser/data/www/m.site.ru
   ```

   Убедитесь, что вы используете правильные относительные пути, если вы находитесь в директории `/var/www/fastuser/data/www`.

3. **Настройка конфигурации веб-сервера**: Убедитесь, что настройки вашего веб-сервера позволяют использование символических ссылок. Для Nginx проверьте блок `server` и убедитесь, что есть директива `disable_symlinks`:

   ```nginx
   location / {
       disable_symlinks off;
       ...
   }
   ```

   Для Apache проверьте, что в файле `.htaccess` или в конфигурации сайта включен `Options FollowSymLinks`.

4. **Кеширование**: После всех изменений не забудьте перезапустить веб-сервер, чтобы обновить кеш:

   ```bash
   sudo systemctl restart nginx
   # или
   sudo systemctl restart apache2
   ```

Если после выполнения всех этих шагов проблема все еще сохраняется, обратите внимание на журналы ошибок веб-сервера. Они могут дать подсказки о том, что именно идет не так. Журналы обычно находятся по следующему пути:

- Для Nginx: `/var/log/nginx/error.log`
- Для Apache: `/var/log/apache2/error.log`

Если у вас остались вопросы, не стесняйтесь обращаться!
Похожие вопросы