Назад | Перейти на главную страницу

Почему при развертывании GNU Social Heroku появляется сообщение об ошибке "Слишком много перенаправлений"?

Я использую heroku, apache, php и gnusocial. Я планирую развернуть экземпляр GNU Social для моей семьи.

Я возился с файлом composer.json, где он выглядит так:

{
    "name": "jmm/me-and-mine",
    "description": "GNU social is a free social networking platform.",
    "require": {
        "openid/php-openid": "^2.3",
        "ext-gd": "*",
        "ext-curl": "*",
        "ext-intl": "*",
        "ext-json": "*",
        "ext-mysqlnd": "*",
        "ext-mbstring": "*"
    },
    "include-path": [
        "extlib/"
    ]
}

где раньше его не было, хотя, похоже, однажды был запрос на слияние для файла composer.json.

В любом случае, я выделил базу данных и сетку sendmail и выполнил шаги установки gnu social. Большая часть этого знакома по настройке Drupal, но здесь я получаю странную ошибку, которую никогда раньше не видел:

Эта страница не работает. Leudla.herokuapp.com слишком много раз перенаправлял вас. [...] ERR_TOO_MANY_REDIRECTS

Я пробовал настроить страницу с ssl и без него, но предпочтительно, я бы хотел настроить его с ssl, так как я надеюсь, что другие люди придут. Кто-нибудь знает, как я могу это исправить?

Вы можете подробнее ознакомиться с настройкой здесь: https://leudla.herokuapp.com

Для полноты я также включу файл .htaccess. Все остальное - это стандартная GNU Social. ** Обновление ** Тем временем я сбросил файл htaccess, который поставляется с программой, и раскомментировал комментарий, в котором говорится: «Если у вас есть проблемы». Вот:

### GNU social "fancy URL" setup
#
#   Change the "RewriteBase" in the new .htaccess file to be the URL path
#       to your GNU Social installation on your server. Typically this will
#       be the path to your GNU Social directory relative to your Web root.
#       If you are installing it in the root directory, leave it as '/'.
#
#   If it doesn't work, double-check that AllowOverride for the GNU Social
#       directory is 'All' in your Apache configuration file. This can be
#       * /etc/apache2/apache2.conf (generic)
#       * /etc/apache2/sites-available/default(on Debian and Ubuntu)
#       * ...many other variations depending on distribution...
#
#   See the Apache documentation for .htaccess files for more details:
#       https://httpd.apache.org/docs/2.4/howto/htaccess.html
#
#   Also, check that mod_rewrite is installed and enabled:
#       https://httpd.apache.org/docs/2.4/mod/mod_rewrite.html


<IfModule mod_rewrite.c>
  RewriteEngine On

  # NOTE: change this to your actual GNU social base URL path,
  # minus the domain part:
  #
  #   https://social.example.com/        => /
  #   https://example.com/social/ => /social/
  #
  RewriteBase /
  #RewriteBase /mublog/

  ## Uncomment these if having trouble with API authentication
  ## when PHP is running in CGI or FastCGI mode.
  #
  RewriteCond %{HTTP:Authorization} ^(.*)
  RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule (.*) index.php?p=$1 [L,QSA]

  ## You can also use PATHINFO by using this RewriteRule instead:
  # RewriteRule (.*) index.php/$1 [L,QSA]
</IfModule>

<FilesMatch "\.(ini)">
    <IfVersion < 2.3>
        Order allow,deny
        Deny from all
    </IfVersion>
    <IfVersion >= 2.3>
        Require all denied
    </IfVersion>
</FilesMatch>

По предложению Майкла Хэмптона я очистил кеш браузера, но все равно не повезло.

** Обновление: ** Я удалил пару зависимостей из composer.json и получил новую копию исходного кода gnu social.

Это может показаться очевидным, но эта ошибка возникает только при включении SSL сервера. Интересно, нужна ли мне дополнительная настройка?

** Обновление: ** Я переименовал сайт в leudla.herokuapp.com