MacBook pro "El capitan"にインストールしたばかりで、vhostに設定したホストを入力できません。 Yosemiteでは、以前はすべてが完全に機能していました。仮想ホストの1つを入力すると、次の結果が得られます。
403 "このサーバーへのアクセス/アクセス許可がありません。"
私は何を試しましたか?
/etc/Apache2/httpd.conf
に移動して、次の行のコメントを外します。
Include /private/etc/Apache2/extra/httpd-vhosts.conf
LoadModule vhost_alias_module libexec/Apache2/mod_vhost_alias.so
/etc/Apache2/extra/httpd-vhosts.conf
は、Yosemiteで以前から動作していた同じファイルであるため、変更していません。
Yosemiteにすべてをインストールするために、homebrewを使用しました。
「El capitan」に関連する別の問題、http://localhost/~myuser/
を入力する前に/Users/myuser/Sites
の任意のフォルダーにアクセスできるようになったので、次のメッセージが表示されます:404 not found
。
私はサーバーの専門家ではないので、助けて欲しいと思っています。設定するのは本当に難しく、OSの新しいアップグレードがあるたびに多くの時間を浪費するのは非常に面倒です。
アップグレードプロセスでは、古いhttpd.conf
。古くなっていない限り、新しいファイルを古いファイルで上書きしてください。念のために新しいコピーを保管してください...
Sudo cp /etc/Apache2/httpd.conf /etc/Apache2/httpd.conf.after-update
Sudo mv /etc/Apache2/httpd.conf.pre-update /etc/Apache2/httpd.conf
Sudo apachectl restart
私も同じ問題を抱えていました。このコマンドラインを入力すると、Apacheからエラーが発生します。
apachectl configtest
このエラーがある場合:
AH00526: Syntax error on line 20 of /private/etc/Apache2/extra/httpd-mpm.conf: Invalid command 'LockFile', perhaps misspelled or defined by a module not included in the server configuration.
このリンクが役立ちます: https://Apple.stackexchange.com/questions/211015/el-capitan-Apache-error-message-ah00526
エルキャピタンにアップグレードした後、ラインを経験しました
Include /private/etc/Apache2/extra/httpd-userdir.conf
に
/private/etc/Apache2/httpd.conf
再びコメントされました。コメントを解除してApacheを再起動すると、すべてが再び正常に機能しました。
2つのバージョンにマージしました(httpd.conf
およびhttp.conf~previous
)その後、v-Hostが機能しなくなっていることがわかりました。ルール19を無効にした後#NameVirtualHost *:80
in /private/etc/Apache2/extra/httpd-vhosts.conf
すべてが再び機能しました!
LockFileはApache≤2.2のディレクティブです。 El CapitanにはApacheバージョン2.4が付属しています。そのため、LockFileを無効にする必要があります
まず、Apacheが停止していることを確認するだけです。
Sudo apachectl stop
次に、httpd-mpm.conf:
この行にコメントする
#
# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
#
<IfModule !mpm_winnt_module>
<IfModule !mpm_netware_module>
LockFile "/private/var/log/Apache2/accept.lock"
</IfModule>
</IfModule>
Apacheを起動Sudo apachectl start
そしてそれがすべてです
一部の人が問題に言及したように、El Capitanへのアップグレードは以前のhttpd.confをバックアップし、httpd.conf〜previousに名前を変更し、新しいhttpd.confを提供したことです。問題を解決するためにこれらのファイルを使用して行う必要があるのは次のとおりです。
Nanoまたは他のエディターを使用してhttpd.conf〜previousを開き、次の2行を探します。
DocumentRoot "/Users/my-machine-name/Prev-Localhost-Path
<Directory "/Users/my-machine-name/Prev-Localhost_path">
それらをコピーしてから、nanoを使用してhttpd.confを開き、次の2行を探します。
DocumentRoot "/Library/WebServer/Documents"
<Directory "/Library/WebServer/Documents">
各行の前に「#」文字を入力してコメントアウトし、元のファイルからコピーした2行に貼り付けます。ファイルを保存して終了します。
その後、再起動する必要があります。これらの変更を行ってから再起動するまで、セットアップは機能しませんでした。ただし、DSGによるApacheの再起動の提案はおそらく十分でしょう。
Sudo apachectl restart