2013-06-11 32 views
8

Tôi đã đau đớn đã phân tích tất cả các ngày hôm qua nếu tôi có một ví dụ apache/web-server chạy, với tất cả các lệnhXAMPP: Một trình nền web khác đã chạy?

ps aux 
ps -e 
lsof 
netstat tunap 

Tôi KHÔNG có một thể hiện của Apache hoặc bất kỳ máy chủ KHÁC chạy ở cổng 8080.

Tuy nhiên, XAMPP mang lại cho tôi điều này:

XAMPP: Another web server daemon is already running 

tôi nên làm gì?

Tôi cũng đã chỉnh sửa httpd.conf thành LISTEN thành cổng 9876 và vẫn giữ nguyên.

Trả lời

7

Nếu:

lsof -Pi |grep 8080  returns no results 
netstat -na |grep 8080  returns no results 
ps -ef      shows no web server processes 

Sau đó, có thể có một lockfile nằm xung quanh đó khởi động được kiểm tra chống lại? Những người thường được tìm thấy dưới/var/run nhưng không nhất thiết phải. Tại thời điểm này tôi thường sẽ chạy strace để xem những gì đang xảy ra:

strace -e đọc = tất cả ghi -e = tất cả -f -o strace.out your_startup_command

Sau đó mở strace.out, tìm kiếm chuỗi "..đã chạy" trong đầu ra, và bắt đầu nhìn vào các dòng ở trên nó để xem những gì không thành công.

+1

Không tìm thấy nhiều, cảm ơn anyway. – ComputerFellow

4

tôi không có bất kỳ máy chủ đang chạy một trong hai, nhưng tôi tìm thấy lệnh này đã cứu tôi:

sudo lsof -i :80 

Nó hiển thị một cái gì đó như thế này đối với tôi:

COMMAND  PID USER FD TYPE    DEVICE SIZE/OFF NODE NAME 
Skype  4275 root 61u IPv4 0x869da9d5a8e5506b  0t0 TCP *:http (LISTEN) 

Vì vậy, giết chết Skype đã làm cho nó công việc.

+0

Điều đó cho tôi thấy. Cảm ơn rất nhiều – Darksaint2014

-1

Dưới lệnh nên làm việc trong tất cả các kịch bản để ngăn chặn các dịch vụ Mysql:

sudo service mysql stop 

Sau khi khai thác dịch vụ này bắt đầu lampp sử dụng dưới đây lệnh:

sudo /opt/lampp/lampp start 
0
sudo /etc/init.d/apache2 stop 
sudo /etc/init.d/mysql stop 
sudo /etc/init.d/proftpd stop 

Giải pháp này dường như làm việc. Bạn phải khởi động lại lampp:

sudo /opt/lampp/lampp restart 

Giải pháp được thử nghiệm cho Ubuntu 12.04 sau một vấn đề tương tự.

+1

Vui lòng trả lời bằng tiếng Anh. – physicalattraction

+0

Tôi đã dịch giải pháp bạn cung cấp và nó không hoạt động –

0

tôi giải quyết vấn đề này vô hiệu hóa cổng ssl

sudo /opt/lampp/lampp disablessl 

và sau đó

sudo /opt/lampp/lampp start 
3
sudo rm /opt/lampp/logs/httpd.pid 
// get listen pid 
sudo netstat -nap | grep :80 

ví dụ về đầu ra:

tcp6 0 0 :::80 :::* LISTEN 14417/httpd 

PID là 14.417

giết proc

sudo kill 14417 

máy chủ lampp start/restart

sudo /opt/lampp/lampp restart 
0

Mind các cổng kiểm tra trong khởi động kịch bản

Nếu bạn đã thay đổi apache xampp của bạn để lắng nghe cổng khác (/opt/lampp/etc/httpd.conf -> "Nghe 80" bây giờ là "Nghe 82"), sau đó bạn cũng phải thay đổi cổng kiểm tra trong/opt/lampp/xampp bắt đầu kịch bản.

Chỉ cần tìm kiếm trong thư mục/opt/lampp/xampp cho phù hợp với

'Another web server is already running.' 

và tìm kiếm trong các dòng trước đó:

if testport 80 

thay đổi nó để:

if testport 82 

Với điều đó bạn có thể bắt đầu một xampp trên cổng 82 và giữ máy chủ web thông thường của bạn trên cổng 80 chạy.