Nginx, Horde, Https, Redirect, Эта веб-страница имеет цикл перенаправления

У меня есть сервер NGINX с установленной Horde, чтобы я мог использовать веб-почту, и получаю две разные ошибки в зависимости от того, использую ли я http -или httpS.
У меня есть отладка установки в nginx, и я не склоняюсь к тому, что является источником ошибки.
Почтовые ошибки / журналы доступа не имеют ошибок.
Я успешно настроил Postfix и Dovecot (оба протестированы / подключены из telnet и Open_ssl из CLI).
Мои IP-порты открыты (по необходимости).

Http работает нормально (h — p: //www.mydomain.not/index.php).
HttpS делает НЕ работать с этим же URL.

HttpS загружает WebMail loginPage НО …
1. Страница не выглядит правильно. Это не похоже на то, что я делал, когда использовал Apache2, что наводит меня на мысль, что что-то неправильно обрабатывает PHP.
2. Я не могу войти через это WebMail страница входа, НО я могу войти используя Орда-test.php страница предоставлена ​​Ордой.
Заметка: веб-почта h — p: //www.mydomain.not/webmail/авторизоваться.PHP
Орда-Test ч — р: //www.mydomain.not/webmail/тестовое задание.PHP

Так….
A) обычный логин (загружается, но не может войти)
(Ч — рS: //Www.mydomain.not/webmail/login.php)
B) Тестовая страница Horde-Mail (не-httpS) загружается, и вход в тест (ы) работает для всех imap / imapS и pop3 / pop3S в браузере.
ч — р: //www.mydomain.not/webmail/test.php

-тем не менее, тестовая страница входа не загружается вообще, если подключен к httpS
ч — рS: //www.mydomain.not/webmail/test.php

Н — рS будет загружаться, если набран определенный URL (h — pS: //www.mydomain.not/webmail/login.php), но я заметил, что страница является неточной в графическом плане. Структура страницы не похожа на страницу входа в Horde / Mail, которую я имел, когда использовал Apache2.

Когда я настраиваю перенаправление на http для принудительного использования https, главная страница веб-сайта не загружается «h — pS: //www.mydomain.not/index.php», но страница входа в веб-почту по-прежнему загружается … — но как прежде чем он не позволит мне войти в систему … продолжает выдавать мне «Ошибка ERR_CONNECTION_TIMED_OUT».

Наконец, я проверил, что мой конфигурационный файл php5-fpm «/etc/php5/fpm/pool.d/www.conf» оператор user / group (nginx) и оператор listen (listen = /tmp/php5-fpm.sock) ) согласуются с настройками в моей конфигурации nginx.conf «fastcgi_pass unix: /tmp/php5-fpm.sock;».

И я должен отметить, что у меня также есть prestashop, загруженный в корневой каталог веб-сайта, и нет никаких ошибок PHP с какой-либо его функциональностью … — но я не подаю на него никакой httpS в это время … просто http.

В итоге:
У меня есть ошибки при попытке использовать HTTPS.
1. httpS не будет загружать главную веб-страницу.
2. httpS загрузит страницу Horde_test. И инструменты тестирования успешно подключатся к imap / imaps / pop3 / pop3s.
3. http загрузит страницу входа в веб-почту, но выдает «Ошибка ERR_CONNECTION_TIMED_OUT».

Единственная известная ошибка, которую я получаю — это CLI после перезагрузки nginx всякий раз, когда я вносил изменения в nginx.conf (даже если я просто добавляю строку комментария и ничего больше не меняю!), Вот что происходит:

/etc/init.d/nginx: 2: /etc/init.d/nginx: синтаксическая ошибка: неожиданный перевод строки

-и, к сожалению, как только это происходит … даже обычная главная страница без httpS теперь выдает «ERR_TOO_MANY_REDIRECTS» … только перезагрузка снова запускает этот http.

Вот мой файл nginx.conf.

…ПРЕДИСЛОВИЕ … ЭТО! @ # $ ИНСТРУМЕНТ НЕ ПОЗВОЛЯЕТ МЕНЯ ПОСТ РЕГУЛЯРНОЙ КОНФИГУРАЦИИ С КОНТРОЛЕМ ЧАРА !! -не моя вина, если это выглядит глупо.

пользователь nginx
рабочий_процесс 4
pid varrunnginx.pid

События
рабочий_соединения 768
multi_accept on

error_log varlognginxdebuglog debug

HTTP

     Basic Settingssendfile on
tcp_nopush on
tcp_nodelay on
keepalive_timeout 65
types_hash_max_size 2048

include etcnginxmime.types
default_type applicationoctet-stream

access_log varlognginxaccess.log
error_log varlognginxerror.log

сервер
слушай 80 слушай для ipv4 эта строка по умолчанию и подразумевается
прослушивать 80 по умолчанию ipv6only = при прослушивании ipv6

    server_name mydomain.not *.mydomain.not

Force http to use httpS
NOTE I've turned this on ONLY to test...-same errors output for httpS noted in posting
rewrite ^ h--ps$http_host$request_uri? permanent     force redirect http to https

HTTPS сервер
сервер
слушать 443
keepalive_timeout 70
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2
ssl_ciphers AES128-SHAAES256-SHARC4-SHADES-CBC3-SHARC4-MD5
ssl_prefer_server_ciphers on
SSL на
ssl_certificate etcnginxsslserver.crt
ssl_certificate_key etcnginxsslserver.key
имя_сервера mydomain.com * .mydomain.com

     ssl_ciphers ALL!ADH!EXPORT56RC4+RSA+HIGH+MEDIUM+LOW+SSLv3+EXP

pass the PHP scripts to FastCGI server
location  .php$
fastcgi_split_path_info ^(.+?.php)(.*)$
if (!-f $document_root$fastcgi_script_name)
return 404

fastcgi_pass 127.0.0.19000
fastcgi_pass unixvarrunphp5-fpm.sock
fastcgi_pass unixtmpphp5-fpm.sock
fastcgi_index index.php
include fastcgi_paramsroot usrsharenginxwwwwcrc
index index.php index.html index.htm

Я не использую порты прямой почтовой рассылки, указанные ниже, поскольку вместо этого я использую TLS через browserHorde-webmail.

почта
Смотрите пример скрипта аутентификации на
httpwiki.nginx.orgImapAuthenticateWithApachePhpScript

    auth_http localhostauth.php
pop3_capabilities "TOP" "USER"imap_capabilities "IMAP4rev1" "UIDPLUS"
server
listen     localhost110
protocol   pop3
proxy      onserver
listen     localhost143
protocol   imap
proxy      on

ПОРТЫ ОТКРЫТЫ
$ sudo netstat -ntlp | grep LISTEN
tcp 0 0 0.0.0.0443 0.0.0.0 * LISTEN 1744nginx
tcp 0 0 0.0.0.0993 0.0.0.0 * LISTEN 938dovecot
tcp 0 0 0.0.0.0995 0.0.0.0 * LISTEN 938dovecot
tcp 0 0 127.0.0.13306 0.0.0.0 * LISTEN 985mysqld
tcp 0 0 0.0.0.0110 0.0.0.0 * LISTEN 938dovecot
tcp 0 0 0.0.0.0143 0.0.0.0 * LISTEN 938dovecot
tcp 0 0 0.0.0.080 0.0.0.0 * LISTEN 1744nginx
tcp 0 0 0.0.0.021 0.0.0.0 * LISTEN 831vsftpd
tcp 0 0 0.0.0.022 0.0.0.0 * LISTEN 800sshd
tcp 0 0 0.0.0.025 0.0.0.0 * LISTEN 1215master
tcp6 0 0 22 * ​​СЛУШАТЬ 800sshd

0

Решение

Здесь было несколько вещей не так, и «ответы» еще не завершены.

  1. Я удалил конфигурацию httpS из nginx.conf.
  2. Я вырезал почти все вещи fastcgi и поместил в базовый конфиг:

    сервер {
    имя_сервера example.org;
    root / var / www / site;

    место нахождения / {
    try_files $ uri $ uri / /index.php;
    }

    location ~ .php $ {
    включите fastcgi.conf;
    fastcgi_pass unix: /tmp/php-fpm.sock;
    }
    }

  3. Я вернулся к базовому веб-хостингу, и прямой путь вызовет каждую страницу, не относящуюся к httpS, указанную выше, но при обычном URL-адресе появляется ошибка 403-запрещенная. Поэтому я должен напечатать /index.php

  4. Я обнаружил, что при загрузке скрипта из инструмента, который я хотел использовать, установлен Apache, который конфликтовал с моим доступом к порту 80 для nginx. -Установлено это, но все еще возникают обычные проблемы с URL.

  5. Журналы ошибок показывают проблему с разрешениями. -Так я говорю, что этот пост пока решен как первопричина прав доступа.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]