ローカルホストがSierra OSへのアップグレード後に接続を拒否する


8

私はダウンロードしてインストールしているapachephpphpmyadminmysqlMacPortsを経由して。macOS Sierraにアップグレードする前は、すべてが正常に機能していました。

アップグレード後、localhostにアクセスしようとすると、次のエラーメッセージが表示されます。「このサイトにアクセスできません。localhostが接続を拒否しました。」

apache http.confファイル内の設定は同じままですが、これは起こっています。

hostsファイルの内容も提供しています

127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost

何かアドバイス?


これらのサービスがすべて実際に実行されていることを確認しましたか?
samh

「sudo port load apache2」コマンドを実行すると、ターミナル「/opt/local/etc/LaunchDaemons/org.macports.apache2/org.macports.apache2.plist:service already loaded」から次の応答が返されるので、 Apacheが実行されていることはかなり確信しています。
vasilisdmr 2016年

/ etc / hostsファイルの内容を追加してください。127.0.0.1は機能しますか?多分関連:apple.stackexchange.com/questions/252466/...
klanomath

すべてが正常であることを確認するためにconfigtestを実行しましたか?Apacheのストックインストールでも同様の問題がありました。アップデートの一部が依存パッケージの1つを壊しました。
dr.nixon

"httpd:ユーザー名-MacBook-Pro.localのhttpd:apr_sockaddr_info_get()が失敗しました" "httpd:127.0.0.1を使用してサーバーの完全修飾ドメイン名を確実に特定できませんでした。 ServerName 'ディレクティブをグローバルに使用して、このメッセージを抑制します。そのため、このチュートリアルと「mdshaonimran.wordpress.com/2011/10/17/…」を実行したところ、エラーは解消されましたが、localhostにアクセスしようとすると、拒否メッセージが表示されます。
vasilisdmr 2016年

回答:


3

私はこの行をコメントアウトしてこれを解決しましたhttpd.conf

LoadModule unique_id_module modules/mod_unique_id.so

私はmod_unique_idについてはあまり詳しくありませんが、ローカルの開発サーバーにインストールすることは重要ではないようです(状況が異なる場合があります)。

unique_id_module

このモジュールは、非常に特定の条件下で「すべての」要求にわたって一意であることが保証されている各要求にマジックトークンを提供します。一意の識別子は、適切に構成されたマシンのクラスター内の複数のマシン間でも一意です。環境変数UNIQUE_IDは、各リクエストの識別子に設定されます。一意の識別子は、このドキュメントの範囲を超えるさまざまな理由で役立ちます。


11

macOS Sierraにアップデートした後、Apache httpdは古いものhttpd.confhttpd.conf.pre-update新しいものに移動して配置します。localhostを機能させるには、以下の手順を試してください。

cd /etc/apache2/  
sudo mv httpd.conf httpd.conf-afterupdate  
sudo mv httpd.conf.pre-update httpd.conf  
sudo apachectl configtest  
sudo apachectl restart  

次にテストします。

curl -I -L localhost

3
sudo apachectl configtestは私にすべてのエラーを与えました!命の恩人、ありがとう。
Joshua Kissoon 2017年

2
答えてくれてありがとう!ところで、このソリューションをどのようにして理解しましたか?configtestでエラーは発生しませんでした(私は失敗するはずでしたか?)正直なところ、自分で答えを探し始める場所がわかりません。
Rahul Govind 2018年

あなたは私の巨大な時間を節約します、どうもありがとう。
シラカトゥーン

3

私も同じ問題を抱えていました。私は走っsudo apachectl configtestてメッセージを得ました:

AH00526:/private/etc/apache2/other/default-ssl.confの6行目の構文エラー:

無効なコマンド「SSLEngine」、おそらくスペルが間違っているか、サーバー構成に含まれていないモジュールによって定義されています

デフォルトのssl構成ファイルの名前を変更したので、ロードされなくなりました。後でApacheが再起動し、すべてが戻ってきました。


1

同じ問題があり、httpd.confのmod_proxy_hckeckへのコメントを解決しました

LoadModule proxy_hcheck_module libexec / apache2 / mod_proxy_hcheck.so

編集:このモジュールにはmod_watchdogが必要であることがapache.orgで見つかりましたが、このモジュールにはコメントが付いているため、mod_proxy_hcheckにコメントするか、mod_watchdogのコメントを外してくださいLoadModule watchdog_module libexec / apache2 / mod_watchdog.so

うまくいくことを願っています!


mod_proxy_hcheckをコメントアウトすることでも解決しました。その前に、Apacheは静かにそのポートにバインドできませんでした。
Otto G

1

私は同じ問題を抱えていました。幸いにも私は偶然に問題を解決することができました。Suitcase Fusionのロードエラーの後、問題はApacheが原因ではないことに気付きました。問題はメインの/ etc /ファイルです。

ホストファイルを置き換える

デフォルトのMac OSホストファイルは、http://cs.us.extensis.com/HostsFile/hosts.zipからダウンロードできます。

hostsファイルを解凍します。Finderで、[移動]> [フォルダへ移動]に移動します。「フォルダへ移動」の場合は、「/ etc」と入力してEnterキーを押します。ホストファイルをetcフォルダにドラッグします。etcファイルにhostsファイルを配置したら、Mac OS管理者のユーザー名とパスワードを求められたら入力します。

ターミナルアプリケーションを開き、次のコマンドを入力してEnterキーを押します。sudo chmod 644 / etc / hosts Mac OSパスワードを入力してEnterキーを押します。ターミナルウィンドウにMac OSパスワードを入力すると、箇条書き、キーアイコン、または何も表示されない場合があります。使用しているMac OSのバージョン。これは正常です。

Mac OS DNSキャッシュをクリアする

ターミナルウィンドウで、次のコマンドを入力してEnterキーを押します。sudo killall -HUP mDNSResponder Macを再起動する原因

Suitcase Fusionはhostsファイルを使用し、ループバックアドレス(127.0.0.1またはlocalhost)を使用してタイプコアを検索して接続します。hostsファイルが存在しない場合、または127.0.0.1のエントリがlocalhost以外の名前を指している場合は、上記のエラーメッセージのいずれかが表示されます。

Suitcase Fusionがlocalhostを127.0.0.1に解決できない場合、最初のエラーメッセージが表示されます。タイプコアがlocalhostを127.0.0.1に解決できない場合、2番目のエラーメッセージが表示されます。

hostsファイルが変更されている場合、新しいバージョンのMac OSにアップグレードするときに削除されることがあります。サードパーティのアプリケーションまたはネットワークユーティリティも、localhostエントリを誤って変更する場合があります。詳細については、「ターミナルを備えたMac OS Xでホストファイルを編集する方法」を参照してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.