2015-10-13 2 views
1

Так что я только что установил Dolphin Pro, и я смог использовать http://localhost:8080/dolphin/install/index.php, как говорят инструкции.Порт удален из URL-адреса при вводе

Отлично! В нем говорится, что он установлен. Однако, когда я пытаюсь перейти к:

http://localhost:8080/dolphin/administration/ попасть в админ панель, когда я ударил войти, чтобы пойти, URL падает порт, и я получаю сообщение об ошибке:

Cannot GET /dolphin/administration/ 

На URL : http://localhost/dolphin/administration/ (обратите внимание на порт: 8080 уронили!)

Я использую хром и XAMPP работает на порту 8080, в то время как мой nodeJS сервер работает порт 80.

Я проверил процессы с netstat -aon но это не помогло мне.

Любая идея, почему порт падает, и я не могу достичь URL-адреса?

enter image description here

Вот CURL запрос на URL

C:\Windows\system32>curl -I "http://localhost:8080/dolphin/administration/" 
HTTP/1.1 302 Found 
Date: Tue, 13 Oct 2015 14:18:54 GMT 
Server: Apache/2.4.16 (Win32) OpenSSL/1.0.1p PHP/5.6.12 
X-Powered-By: PHP/5.6.12 
Location: http://localhost/dolphin/administration/ 
Content-Type: text/html; charset=UTF-8 

Другие ноты: Кажется, (по @rlemon), что, когда я пытаюсь с помощью: 8888 так же, как случайный порт, порт НЕ отбрасывается. Таким образом, существует проблема с пересылкой порта 8080 на порт 80

+0

порт 8080 будет по умолчанию судом loaclhost. Поэтому, когда вы запустите его, вы также удалите URL-адрес –

+0

, можете ли вы попробовать http://127.0.0.1:8080/dolphin/administration/? – ogres

+2

Я думал, что порт 80 по умолчанию. Когда я бросаю порт, я ударяю страницы с моего узла-сервера. –

ответ

4

Сервер отвечает перенаправлением 302.

HTTP/1.1 302 Found 
Location: http://localhost/dolphin/administration/ 

Эти две строки в основном говорят о переходе на указанный URL.

Проверьте конфигурацию своего сервера, должен быть установлен способ установки базового URL-адреса, где вы должны предоставить порт.

Просматривая the FAQ of Dolphin Я нашел эту запись конфигурационный файл:

$site['url'] = "http://example.com/"; 

Добавление порта должно решить вашу проблему

$site['url'] = "http://example.com:8080/"; 

Там, кажется, вторая соответствующая строка:

header("Location:http://{$aUrl['host']}{$_SERVER['REQUEST_URI']}"); 

Снова добавьте порт после хоста:

header("Location:http://{$aUrl['host']}:8080{$_SERVER['REQUEST_URI']}"); 

Не уверен, что, если он работает в этом направлении, хотя, это зависит, если первый / находится в хозяине или переменной REQUEST_URI, вы должны попробовать.

+2

Это остановило падение порта, спасибо! К сожалению, это бросает цикл переадресации, поэтому мне придется это понять дальше. Спасибо за помощь –

+0

Эй, вы должны добавить эту строку в свой ответ, так как это вызвало цикл переадресации. По умолчанию этот оператор if направляется в порт: 80 'if (isset ($ _ SERVER ['HTTP_HOST']) и 0! = Strcasecmp ($ _ SERVER ['HTTP_HOST'], $ aUrl ['host']) и 0! = strcasecmp ($ _ SERVER ['HTTP_HOST'], $ aUrl ['host']. ': 8080')) {'в строке 95 в header.inc. Измените его на соответствующий порт, и установка будет успешной. –

+0

Если вы изменяете PHP-файлы приложения напрямую, вам придется повторять эти изменения после каждого сделанного вами обновления. В конечном счете вы должны подумать об изменении своей настройки. Обычная конфигурация - иметь apache на порту 80 по умолчанию и перенаправлять запросы на сервер приложений (в вашем случае node.js), который выполняется на альтернативном порту. Это сэкономит вам много работы в будущем. –

Смежные вопросы