Apache HTTP Server - Sizuha/devdog GitHub Wiki

μ„€μΉ˜ 경둜

Mac OS Xμ—μ„œ 기본으둜 μ„€μΉ˜λœ apache2 경둜

/usr/libexec/apache2

HTTP μ„œλ²„ μ‹œμž‘ 및 μ’…λ£Œ

μ‹œμž‘
$ sudo apachectl start

쀑지
$ sudo apachectl stop

μž¬μ‹œμž‘
$ sudo apachectl restart

λΆ€νŒ…ν•  λ•Œ μžλ™ μ‹œμž‘: macOS

λΆ€νŒ…μ‹œ μžλ™μœΌλ‘œ μ‹œμž‘λ˜κ²Œ 등둝

$ sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist

등둝 ν•΄μ œ

$ sudo launchctl unload /System/Library/LaunchDaemons/org.apache.httpd.plist

μ„€μ •

μ„€μ •νŒŒμΌ 경둜

$ cd /etc/apache2/users
$ sudo nano μ‚¬μš©μžμ΄λ¦„.conf

μ›Ή 곡유 폴더 μ„€μ •

μ‚¬μš©μž μ›Ή μ‚¬μ΄νŠΈ λ£¨νŠΈλŠ” μ‚¬μš©μž_κ³„μ •ν™ˆ/μ‚¬μ΄νŠΈ(~/Sites)

μ‚¬μ΄νŠΈ λ£¨νŠΈμ— conf νŒŒμΌμ„ 생성해 μ€˜μ•Ό ν•œλ‹€.

cd /etc/apache2/users
cp Guest.conf μ‚¬μš©μžκ³„μ •λͺ….con
sudo nano μ‚¬μš©μžκ³„μ •λͺ….conf

그리고 conf 파일 λ‚΄μš©μ„ λ‹€μŒκ³Ό 같이 μˆ˜μ •.

### For OSX 10.10 Apache 2.4 ###
<Directory "/Users/username/Sites/">
AllowOverride All
Options Indexes MultiViews FollowSymLinks
Require all granted
</Directory>
### For OSX 10.9 Apache 2.2 ###
<Directory "/Users/username/Sites/">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

/etc/apache2/httpd.conf νŒŒμΌμ—μ„œ λ‹€μŒκ³Ό 같이 μˆ˜μ •

#LoadModule php5_module libexec/apache2/libphp5.so

μœ„ 뢀뢄을, μ•„λž˜μ™€ 같이 주석을 제거

LoadModule php5_module libexec/apache2/libphp5.so

그리고 또 λ‹€μŒ ν•­λͺ©μ„ μˆ˜μ •

<Directory "/Library/WebServer/Documents">
    ...
    AllowOverride All
    ...

MySQLκ³Ό PHP 연동

문제

MySQL μ„œλ²„κ°€ λ™μž‘ 쀑일 λ•Œ, tmp/mysql.sock 파일이 μƒμ„±λœλ‹€.

그런데 PHP 섀정이 var/mysql/mysql.sock 으둜 λ˜μ–΄ μžˆμ–΄μ„œ PHPμ—μ„œ MySQL 접속이 λΆˆκ°€λŠ₯ν•œ κ²½μš°κ°€ μžˆλ‹€.

ν•΄κ²°

/etc/php.ini.default νŒŒμΌμ—μ„œ var/mysql/mysql.sock으둜 λ˜μ–΄ μžˆλŠ” λΆ€λΆ„(μ„Έ ꡰ데)을 μ „λΆ€ tmp/mysql.sock으둜 λ³€κ²½.

그리고 λ‹€μŒκ³Ό 같이 php.ini νŒŒμΌμ„ 생성.

sudo cp /etc/php.ini.default /etc/php.ini

mod_wsgi

μ†ŒμŠ€λ₯Ό 직접 컴파일 ν•  경우, (macOS)

$ tar xvfz mod_wsgi-X.Y.tar.gz  # x,yλŠ” 버전
$ cd mod_wsgi-X.Y
$ ./configure --with-apxs=/usr/sbin/apxs --with-python=/usr/bin/python
$ make
$ sudo make install

make error

env: /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.9.xctoolchain/usr/bin/cc: No such file or directory

μ΄λŸ°μ‹μ˜ μ—λŸ¬κ°€ λ‚˜μ˜¨λ‹€λ©΄,

$ sudo ln -s /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.9.xctoolchain

apache μ„€μ •

/etc/apache2/httpd.conf에 λ‹€μŒ 섀정을 μΆ”κ°€.

LoadModule wsgi_module     libexec/apache2/mod_wsgi.so

μ•„νŒŒμΉ˜ μ„œλ²„λ₯Ό μž¬μ‹œμž‘ ν•œλ‹€.

⚠️ **GitHub.com Fallback** ⚠️