Этот дает мне головную боль...
Я установил XAMPP for Linux 1.7.7
на Ubuntu 12.10. Я не установил последнюю версию из-за новой безопасности "функция", которая делает XAMPP
настолько безопасный я не могу получить его выполнение. Но это - другая история.
После того, как это установило и работало хорошо в течение нескольких месяцев, я теперь получаю известное XAMPP: Another web server daemon is already running.
ошибка при запуске XAMPP. Теперь я погуглил экстенсивно и могу исключить следующее:
Apache
установка, просто XAMPP
apache
или apache 2
сервисное выполнениеport 80
(сверенный netstat -an grep -w 80
)Я также сделал новую установку xampp
1.7.7, но это дает мне тот же результат. Я думаю, что попробовал каждое решение на первых двух страницах результатов Google, и нигде не ближе к решению.
Может любой давать мне подсказки по тому, как найти таинственное Webdeamon
это уже работает?
Я изменил порт, который XAMPP слушает в httpd.conf, который, в моем случае, расположен в /opt/lampp/etc/
папка. Я изменил опцию Listen, поскольку это было единственной опцией, которая имела значение 80. Тем не менее я уже получаю Deamon рабочая ошибка.
Вывод netstat
команда следующая:
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1189/tntnet
tcp 0 0 192.168.178.52:35048 91.189.94.25:80 ESTABLISHED 2350/ubuntu-geoip-p
tcp 0 0 192.168.178.52:35047 91.189.94.25:80 TIME_WAIT -
Я уничтожил ubuntu-geoip-p
сервис и не мог найти способ уничтожить tcp сервис, но я не думаю, что tcp сервис должен быть уничтожен для запуска апача. Так или иначе после этого я все еще получил ту же ошибку.
Какие-либо другие предложения?
lsof -i :80
дал другой вывод, и я видел это tntnet
также используемый порт 80. Удаленный tntnet
и апач, запущенный как обычно. Проблема решена! Спасибо за информацию.
@TedvG Update 17 ноября 2012
ubuntu-geoip-p
подключался к удаленному IP-адресу через порт 80, поэтому он не связан.
выглядит как tntnet (другой веб-сервер, это объясняет это), процесс связывал порт 80. Вы должны остановить его (я полагаю, service tntnet stop
делает это, если НЕ уничтожить, процесс tntnet
может быть kill -9 pid
для уничтожения). Это). Также вы можете удалить, заполнив пакет tntnet
.
Или вы можете изменить порт apache, отредактировать lampp/etc/httpd.conf
, изменить порт на 8080, например:
#Listen 12.34.56.78:80
Listen 8080
Запустить его, используя lampp startapache
По умолчанию Apache XAMPP использует порт 80 (требуется root для портов ниже 1024), в любом случае его можно изменить, отредактировав $XAMPP/apache/conf/httpd.conf
Вы можете запустить
lsof -i :80
или
netstat -nap | grep :80
[ 1120], чтобы выяснить процесс с использованием порта 80
Например, если я использую модуль Python SimpleHTTPServer на порту 8080
$ lsof -i :8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
python 16484 terry 3u IPv4 367600 0t0 TCP *:http-alt (LISTEN)
$ netstat -anp | grep :8080
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 16484/python
Очень ясно.
Поскольку я не знаю, понадобится ли мне tntnet
, и мне все равно, чтобы найти трудный путь, лучшим вариантом, казалось, было изменение порта, используемого Apache.
В последних версиях XAMPP это очень легко сделать с помощью менеджера графического интерфейса пользователя:
Запустить менеджер (используйте manager-linux-x64.run
при работе на 64-битах):
cd /opt/lampp
sudo ./manager-linux.run
Перейдите на вкладку «Управление серверами» и выберите «Веб-сервер Apache». Нажмите . Настройте :
Измените порт в соответствующем поле, например, на 8080
, и нажмите OK :
Запустите все серверы из приложения, нажав Запустить все . [+1121]
Откройте ваш любимый браузер и перейдите к http://localhost:8080
; он должен автоматически перенаправить на http://localhost:8080/xampp
.
Просто введите эту команду в терминал
sudo /etc/init.d/apache2 stop
и после этого
/opt/lampp/lampp/ start