Tại sao tôi vẫn thấy một trang web Apache trên Nginx?


22

Tôi đã cài đặt nginx sau đó tôi cài đặt apache2, sau một thời gian tôi gỡ bỏ apache2. Sau một vài tuần, tôi nhận thấy một điều kỳ lạ khi tôi truy cập http://localhost: nginx xử lý yêu cầu nhưng khi tôi nhập địa chỉ IP của tôi hoặc bất kỳ ai trong mạng của tôi nhập IP, điều đó dẫn đến việc tải trang apache2 nói rằng nó hoạt động chính xác.

Tôi đã xóa và xóa Apache nhưng tôi vẫn không thể thoát khỏi vấn đề này, đã thử cài đặt lại và thanh trừng lại sau đó khởi động lại. Bất kỳ ý tưởng về những gì có thể là vấn đề?

PS máy tính của tôi không nhận ra apache2 vì dù sao cũng được cài đặt và tất cả các tệp và tệp nhị phân của Apache không được tìm thấy ngay cả khi tôi tự tìm kiếm chúng.

root@elite-HP-Pro3500-G2-MT-PC:/home/elite# whereis apache2
apache2:
root@elite-HP-Pro3500-G2-MT-PC:/home/elite# sudo service apache2 start
Failed to start apache2.service: Unit apache2.service failed to load: No such file or directory.
root@elite-HP-Pro3500-G2-MT-PC:/home/elite# sudo apt-get purge apache2 apache2-utils
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package 'apache2' is not installed, so not removed
Package 'apache2-utils' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 19 not upgraded.

Vì lý do kỹ thuật, apache2gói chỉ là một siêu dữ liệu phụ thuộc vào các gói khác. Bạn phải loại bỏ các gói liên quan quá để loại bỏ nhị phân.
Oli

Tôi đã tìm kiếm / user / sbin và / user / bin và tôi không thể tìm thấy nó, bạn có biết các vị trí khác có thể có nhị phân không? @Oli
Newbie

Xem câu trả lời của tôi về câu hỏi tôi đã đóng lại .
Oli

@ Tôi đã làm theo hướng dẫn đó để loại bỏ apache2 nhưng nó vẫn tồn tại bằng cách nào đó và tôi thấy vấn đề đó chỉ xảy ra khi tôi sử dụng bất cứ thứ gì khác ngoài loopback (localhost), nó sẽ chuyển hướng sang apache2 nhưng nếu tôi sử dụng localhost nginx hoạt động
Newbie

Bạn có chắc chắn rằng nó thực sự là Apache phục vụ nó và không chỉ các tệp trang mặc định (in / var / www) đi kèm với cài đặt Apache mặc định, hiện đang được ngninx lưu trữ? Đó là những gì nó nghe như. Nếu không, tôi sẽ theo dõi những gì đang chạy htopvà tìm ra máy chủ nào đang chạy.
Oli

Câu trả lời:


26

Ngay cả sau khi bạn loại bỏ hoàn toàn apache2 , bạn vẫn sẽ có các tệp "trang mặc định" của nó /var/www/. Theo mặc định, Nginx sẽ cố gắng phân phát các tệp này hoặc phiên bản riêng của các tệp này cho các trang web mà nó không thể phù hợp. Bạn có thể thấy tất cả điều này trong /etc/nginx/sites-available/default.

Những gì bạn đang thấy là do thiết kế, nó chỉ là bất ngờ.

Để khắc phục, bạn có thể chỉnh sửa hoặc xóa trang web mặc định ... Hoặc thay đổi các tệp trong /var/www/để phù hợp hơn với nhu cầu của bạn. Nếu bạn muốn loại bỏ mặc định, bạn có thể xóa /etc/nginx/sites-available/default. Nó chỉ là một liên kết tượng trưng nên nếu bạn muốn khôi phục nó, bạn có thể với:

sudo ln -s /etc/nginx/sites-{available,enabled}/default

Và nhớ tải lại sau khi thay đổi cấu hình:

sudo service nginx configtest  # make sure the config is good before reloading!
sudo service nginx reload

1
Wow - không bao giờ đoán được điều đó. Đã thử tất cả các kiểu chơi xung quanh với Apache cho đến khi tôi đọc bài viết này!
Anupam
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.