Как изменить порт сервера Apache XAMPP?

116

Это мои настройки Apache httpd.conf:

Listen 8012
ServerName localhost:8012

Каждый раз, когда я запускаю Apache через, XAMPPя вижу это сообщение:

Status Check OK
Busy…
Apache Started [Port 80]

Кто-нибудь, пожалуйста, помогите мне, я могу изменить любые другие настройки?

Сатишкумар
источник
2
следите за этой веткой. stackoverflow.com/questions/7882121/busy-apache-started-port-80/… Возможно, вам это пригодится.
Преша,

Ответы:

314

Чтобы ответить на исходный вопрос:

Чтобы изменить порт сервера XAMPP Apache, выполните следующие действия:

1. Выберите свободный номер порта.

По умолчанию Apache использует порт 80.

Взгляните на все используемые вами порты с помощью Netstat (интегрированного в панель управления XAMPP ).

Снимок экрана xampp control netstat

Затем вы можете увидеть все используемые порты и здесь мы видим , что 80порт уже используется на System.

скриншот netstat порт 80

Выберите свободный номер порта ( 8012для этого примера).

2. Отредактируйте файл " httpd.conf"

Этот файл должен быть найден в C:\xampp\apache\confна Windows , или bin/apacheдля Linux .:

Listen 80
ServerName localhost:80

Заменить их на:

Listen 8012
ServerName localhost:8012

Сохраните файл.

Доступ к: http: // localhost: 8012, чтобы проверить, работает ли он.

Если нет, вы должны отредактировать http-ssl.confфайл, как описано в шаге 3 ниже. ↓

3. Отредактируйте файл " http-ssl.conf"

Этот файл должен быть найден в C:\xampp\apache\conf\extraна Windows , или увидеть эту ссылку для Linux .

Найдите следующие строки:

Listen 443
<VirtualHost _default_:443>
ServerName localhost:443

Замените их на другой номер порта ( 8013для этого примера):

Listen 8013
<VirtualHost _default_:8013>
ServerName localhost:8013

Сохраните файл.

Перезагрузите сервер Apache.

Доступ к: http: // localhost: 8012, чтобы проверить, работает ли он.

4. Настройте параметры сервера XAMPP Apache.

Если вы хотите получить доступ к localhost без указания номера порта в URL-адресе
http: // localhost вместо http: // localhost: 8012 .

  • Откройте панель управления Xampp
  • Перейдите в ConfigService and Port SettingsApache.
  • Замените значения Main Port и SSL Port выбранными (например, 8012и 8013).
  • Сохранить настройки сервиса
  • Сохранить конфигурацию панели управления
  • Перезагрузите сервер Apache. порт настройки xampp apache Теперь он должен работать.

4.1. Конфигурация веб-браузера

Если эта конфигурация не скрывает номер порта в URL-адресе, это потому, что ваш веб-браузер не настроен для. См .: Инструменты ► Параметры ► Общие ► Параметры подключения ... позволяет выбрать другие порты или изменить настройки прокси.

4.2. Для редких случаев полного невезения

Если шаг 4 и настройка веб-браузера не работают для вас, единственный способ сделать это - вернуться к 80 или установить прослушиватель на порт 80 (например, прокси), который перенаправляет весь ваш трафик на порт 8012.

Чтобы ответить на вашу проблему:

Если это сообщение все еще отображается в консоли панели управления:

Apache запущен [порт 80]

  • Найдите расположение xampp-control.exeфайла (возможно, в C:\xampp)
  • Создайте файл XAMPP.INIв этом каталоге (так что XAMPP.iniи xampp-control.exeнаходятся в том же каталоге)

Поместите в XAMPP.INIфайл следующие строки :

[PORTS]
apache = 8012

Теперь вы всегда получите:

Apache запущен [порт 8012]

Обратите внимание, что это только для демонстрации . Это не имеет отношения к вашему httpd.conf.

Антуан Субит
источник
3
Отличный ответ, с примером.
Суджит PS 01
1
здорово! Это работает как постоянное решение, другие способы (учитывая временный и, возможно, неприятный способ) - это завершить процесс, использующий эти порты.
MrMins
4
Я выполнил шаг 4, но все еще не могу получить доступ к localhost без порта. Может ли кто-нибудь что-нибудь предложить?
MauF
2
Есть ли какие-либо обновления на шаге 4, которые я пробовал, но не работает, все же нужно включить порт
ßiansor Å. Ålmerol 09
1
@PeterCo Да, это была опечатка. Я чиню это. Спасибо за 2ct
Antoine Subit
34

Лучшее решение - перенастроить сервер XAMPP Apache для прослушивания и использования разных номеров портов. Вот как это сделать:

1) Во-первых, вам нужно открыть файл Apache «httpd.conf» и настроить его для использования / прослушивания нового порта №. Чтобы открыть файл httpd.conf, нажмите кнопку «Конфигурация» рядом с кнопками «Пуск» и «Администратор» Apache. В открывшемся всплывающем меню щелкните и откройте httpd.conf

2) Найдите в файле httpd.conf слово «слушать». Вы найдете две строки с чем-то вроде:

#Listen 12.34.56.78:80
Listen 80

Измените номер порта на номер порта. по вашему выбору (например, порт 1234), как показано ниже

#Listen 12.34.56.78:1234
Listen 1234

3) Затем в том же файле httpd.conf найдите «ServerName localhost:». Установите его на новый номер порта.

ServerName localhost:1234

4) Сохраните и закройте файл httpd.conf.

5) Теперь снова нажмите кнопку конфигурации Apache и откройте файл «httpd-ssl.conf».

6) В файле httpd-ssl.conf снова найдите «Слушать». Вы можете найти:

Listen 443

Измените его, чтобы прослушивать новый порт по вашему выбору. Скажи как:

Listen 1443

7) В том же файле httpd-ssl.conf найдите другую строку, в которой говорится <VirtualHost _default_:443>. Измените это на свой новый номер порта. (как 1443)

8) Также в том же httpd-ssl.conf вы можете найти другую строку, определяющую номер порта. Для этого ищите «ServerName». вы можете найти что-то вроде:

ServerName www.example.com:443 or  ServerName localhost:433

Измените это ServerName на свой новый номер порта.

8) Сохраните и закройте файл httpd-ssl.conf.

9) Наконец, есть еще одно место, где вы должны изменить номер порта. Для этого нажмите и откройте кнопку «Конфигурация» на панели управления XAMPP. Затем нажмите кнопку «Настройки службы и порта». В нем щелкните вкладку «Apache», введите и сохраните новые номера портов в полях «Основной порт» и «Порт SSL». Нажмите «Сохранить» и закройте поля конфигурации.

Это должно делать свое дело. Теперь «запустите» Apache, и если все пойдет хорошо, ваш сервер Apache должен запуститься.

Вы также увидите, что номер порта Apache на панели управления XAMPP изменился на новые идентификаторы порта, которые вы установили.

Абхи Сони
источник
очень полезно. Спасибо
Jen143
3

Вы пытались получить доступ к своей странице, набрав « http: // localhost: 8012 » (после перезапуска apache)?

точный
источник
1
Да, он работает в localhost: 8012, но когда я пытаюсь удаленно с моим IP-адресом, my-ip-address: 8012 ошибка получения страницы не найдена.
Sathishkumar 02
1
Вам необходимо убедиться, что вы используете свой общедоступный IP-адрес / IP-адрес маршрутизатора при использовании устройства, которое не подключено к той же сети, и убедитесь, что ваш маршрутизатор знает, что перенаправляет все запросы для этого порта на хост-устройство. Вот отличный ответ на аналогичный вопрос, который должен объяснить, как это сделать. Я рекомендую использовать NoIP для URL-адреса, который не изменится. Кроме того, с NoIP вы можете напрямую перенаправить на определенный порт, поэтому вам не нужно добавлять URL.
Trevin Avery
3

Если в XAMPP serverданный момент работает, остановите сервер XAMPP.

Выполните следующие действия, чтобы изменить номер порта.

Откройте файл в следующем месте.

[XAMPP Installation Folder]/apache/conf/httpd.conf

Откройте httpd.confфайл и найдите строку:

Слушай 80

Это номер порта, используемый XAMMP.

Затем найдите строку ServerName и обновите номер порта, который вы ввели ранее дляListen

Теперь сохраните и перезапустите сервер XAMPP.

Дулит Де Коста
источник
2

У меня тоже была проблема. Я переключил порт, но не смог запустить на 8012.

Skype был задействован, потому что у него был тот же порт - 80. И он не мог позволить apache изменить свой порт.

Поэтому просто перезагрузите компьютер и перед включением любых других программ откройте xampp, сначала измените порт, скажем, с 80 на 8000 или 8012 в этих строках в httpd.conf

Listen 80
ServerName localhost:80

Перезагрузите xampp, запустите apache, проверьте localhost.

Люк359
источник
2
На самом деле порт Skype динамический, он может менять порт, если он уже занят. Более простое решение - выйти из Skype, а затем запустить Apache, снова запустить Skype. Это разовая операция, которая решает проблему.
Муса Хайдари
Да, это решает проблему. Но тем, кто не хочет каждый раз перезапускать скайп, могут это использовать.
Luke359
1

если не работает над идентификатором порта, измените его. например, 8082,8080 Перезапустите xammp, запустите сервер apache, проверьте его. Теперь он работает.

Шьям Бхимани
источник