sự cố khi truy cập localhost trên Mac OS X Mavericks, nó vẫn hoạt động tốt cho đến khi tôi khởi động lại vào hôm nay


16

Tôi bối rối về vấn đề tôi đang gặp phải và sẽ thực sự đánh giá cao sự giúp đỡ giải quyết nó.

Tôi có iMac chạy Mac OS X Mavericks 10.9.2

Tôi đã thiết lập apache của mình để phục vụ tài liệu từ gốc máy chủ / Khối lượng / trang web /

Tôi đang sử dụng máy chủ Dynamic Virtual, vì vậy chỉ cần thêm một thư mục có hậu tố * .dev, nó sẽ trở thành máy chủ ảo.

Tệp máy chủ của tôi khá cơ bản:

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1         localhost
255.255.255.255   broadcasthost
::1               localhost
fe80::1%lo0       localhost

Tệp httpd-vhosts.conf của tôi như sau:

#
# Virtual Hosts
#
# If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#
# Please see the documentation at 
# <URL:http://httpd.apache.org/docs/2.2/vhosts/>
# for further details before you try to setup virtual hosts.
#
# You may use the command line option '-S' to verify your virtual host
# configuration.

#
# Use name-based virtual hosting.
#
NameVirtualHost *:80

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#

#allow access to the Hosts directory where your sites are
<Directory "/Volumes/sites">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    #you could configure the following to only allow access from localhost
    Order allow,deny
    Allow from all
</Directory>

#get the server name from the Host: header
UseCanonicalName Off
VirtualDocumentRoot /Volumes/sites/%0/

Tất cả điều này đã làm việc. Và tôi đã không thay đổi bất cứ điều gì trong tập tin httpd.conf của tôi.

Nhưng tôi không thể tải localhost

Tôi cũng không thể tải 127.0.0.1

Tôi đã chạy lệnh sudo lsof -i :80 | egrep "PID|LISTEN"để xem liệu có bất kỳ PID nào đang nghe trên cổng 80. Kết quả là trống rỗng.

Tôi đã cố gắng khởi động lại apache và cũng dừng lại và sau đó bắt đầu sử dụng apache

sudo apachectl stop sudo apachectl start

sudo apachectl restart

Không có gì hoạt động.

Tôi đã kiểm tra nếu apache đang chạy bằng cách ban hành lệnh httpd -v

Sự trở lại là:

Server version: Apache/2.2.26 (Unix)
Server built:   Dec 10 2013 22:09:38

Tôi đã cố gắng kết nối với localhost và 127.0.0.1 thông qua dòng lệnh với kết quả như sau:

alisamii at alisamii in ~
$ telnet localhost 80
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
Trying fe80::1...
telnet: connect to address fe80::1: Connection refused
telnet: Unable to connect to remote host
alisamii at alisamii in ~
$ telnet 127.0.0.1 80
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
telnet: Unable to connect to remote host
alisamii at alisamii in ~
$ lynx http://localhost

Looking up localhost
Making HTTP connection to localhost
Alert!: Unable to connect to remote host.

lynx: Can't access startfile http://localhost/
alisamii at alisamii in ~
$ lynx http://127.0.0.1

Looking up 127.0.0.1
Making HTTP connection to 127.0.0.1
Alert!: Unable to connect to remote host.

lynx: Can't access startfile http://127.0.0.1/
alisamii at alisamii in ~

Xin vui lòng giúp đỡ.


Bạn đã làm gì với vấn đề này, vì tôi đang trải nghiệm chính xác điều tương tự ở đây :(
Pmpr

Câu trả lời:


38

Có cùng một vấn đề. Tôi đã xóa một trong những thư mục của dự án của tôi và nó đã bị hỏng. Trong trường hợp này, cấu hình của trang web sẽ bị xóa khỏi httpd-vhosts.conf và httpd.conf.

Thử ping 127.0.0.1

apachectl configtest có thể giúp bạn phát hiện vấn đề


7
Hoàn toàn chính xác, apachectl configtestcần phải là lần thử đầu tiên của bạn! Cảm ơn.
Lucas Serafim

Cảnh báo: DocumentRoot [/ Users / me / blah / blah] không tồn tại, bạn có thể nhanh chóng tìm thấy dòng vi phạm vớisudo cd / && grep -rn "/Users/me/blah/blah" *
Shanimal

4

Vấn đề có thể là tệp máy chủ có thể đã bị hỏng từ mã hóa ASCII ban đầu. Tôi xóa tất cả các khoảng trắng và đặt các tab vào đó, chạy sudo killall -HUP mDNSResponder(bạn có thể làm điều đó thay vì khởi động lại) và sau đó, nó hoạt động.


1
Vâng, /etc/hostsđã bị hỏng - các dòng trùng lặp, một số khoảng trắng nơi từng có các tab ... bây giờ để tìm hiểu điều đó đã xảy ra như thế nào ....
LeeGee

3

Trong trường hợp của tôi, vấn đề là thư mục / private / var / log / apache2 / bị mất tích không rõ nguyên nhân. Tái tạo nó với

sudo mkdir /private/var/log/apache2

và khởi động lại apache với

sudo apachectl restart

thực hiện các mẹo!


2

Các kết nối bị từ chối thường được gây ra bởi một máy chủ không nghe cổng.

Lỗi cú pháp hoặc lỗi tập tin cấu hình chung sẽ giết chết apache khi khởi động (thường không báo cáo với nhật ký lỗi hoặc thiết bị đầu cuối).

Hãy thử chạy sudo apachectl configtestvà xem nếu nó xuất ra bất kỳ thông báo lỗi.


-1

Đó là Mac cụ thể. Đầu tiên bạn phải kích hoạt Chia sẻ Web. Đối với Maveric nó có thể được thực hiện như trong hướng dẫn này. https://www.youtube.com/watch?v=TgiZiTU9JVY Thứ hai, đối với Mac lưu lượng nếu được lọc qua pfctl (tức là man pfctl) trong Maveric và ipfw (man ipfw) cho phiên bản Mac OS cũ hơn nếu bạn cần nhiều hơn cổng 80


Câu trả lời trên Hỏi khác nhau không chỉ là một liên kết. Bạn có thể bao gồm một liên kết, nhưng vui lòng tóm tắt hoặc trích dẫn nó trong câu trả lời. Ý tưởng là làm cho câu trả lời đứng một mình.
nohillside

-2

Điều này có thể giúp với truy vấn của bạn. http://mallinson.ca/web-development-with-mavericks/


Vui lòng cố gắng giải thích câu trả lời của bạn cho truy vấn thay vì chỉ đăng một liên kết.
Jash Jacob
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.