이것은 Apache HTTP 의 기본 설치 및 MySQL의 사용자 정의 설치 가있는 Mac OS X 용 입니다 .
대답은 @ alec-gorge의 탁월한 응답을 기반으로하지만 내 구성 (대부분 Mac OS X 특정 구성)에 구성하기 위해 몇 가지 특정 변경 사항을 Google에 검색해야했기 때문에 완전성을 위해 여기에 추가 할 것이라고 생각했습니다.
Apache HTTP에 대한 PHP5 지원 활성화
에서 PHP5 지원이 활성화되어 있는지 확인하십시오 /etc/apache2/httpd.conf
.
php5_module 모듈 을로드 하려면 파일을 편집 sudo vi /etc/apache2/httpd.conf
(요청시 암호 입력 ;
)하고 줄의 주석을 제거 ( 시작 부분부터 제거 )합니다 .
LoadModule php5_module libexec/apache2/libphp5.so
Apache HTTP를 시작합니다 sudo apachectl start
(또는 restart
이미 시작되어 구성 파일을 다시 읽기 위해 다시 시작해야하는 경우).
/var/log/apache2/error_log
php5_module이 활성화되었음을 알려주는 줄이 있는지 확인하십시오 PHP/5.3.15
.
[notice] Apache/2.2.22 (Unix) DAV/2 PHP/5.3.15 with Suhosin-Patch configured -- resuming normal operations
소켓 파일 이름 조회
MySQL이 실행 중일 때 (와 함께 ./bin/mysqld_safe
) 로그 파일을 찾을 수있는 위치를 알려주는 디버그 행이 콘솔에 인쇄되어야합니다. 파일 이름의 호스트 이름을 기록해 두십시오. localhost
제 경우에는 구성에 따라 다를 수 있습니다.
뒤에 오는 파일 Logging to
이 중요합니다. MySQL이 작업을 기록하는 곳입니다.
130309 12:17:59 mysqld_safe Logging to '/Users/jacek/apps/mysql/data/localhost.err'.
130309 12:17:59 mysqld_safe Starting mysqld daemon with databases from /Users/jacek/apps/mysql/data
localhost.err
파일을 엽니 다 (다시 말하지만, 이름이 다를 수 있음). 즉 tail -1 /Users/jacek/apps/mysql/data/localhost.err
, 소켓 파일의 이름을 찾으려면 마지막 행이어야합니다.
$ tail -1 /Users/jacek/apps/mysql/data/localhost.err
Version: '5.5.27' socket: '/tmp/mysql.sock' port: 3306 MySQL Community Server (GPL)
.NET에서 socket:
사용해야하는 소켓 파일 인 부분에 유의하십시오 php.ini
.
MySQL에 로그인하고 실행하여 소켓의 파일 이름 위치를 결정하는 또 다른 방법 (일부는 더 쉬운 방법이라고 말합니다)이 있습니다.
show variables like '%socket%';
MySQL 지원으로 PHP5 구성-/etc/php.ini
php.ini라고하면 ...
에서 /etc
디렉토리있다 /etc/php.ini.default 파일. /etc/php.ini에 복사하십시오 .
sudo cp /etc/php.ini.default /etc/php.ini
mysql.default_socket을 열고 /etc/php.ini
찾습니다 .
sudo vi /etc/php.ini
기본값은 mysql.default_socket
입니다 /var/mysql/mysql.sock
. 이전에 기록한 값으로 변경해야합니다 /tmp/mysql.sock
. 제 경우에는 그렇습니다.
/etc/php.ini
소켓 파일의 이름을 반영 하도록 파일을 바꿉니다 .
mysql.default_socket = /tmp/mysql.sock
mysqli.default_socket = /tmp/mysql.sock
최종 확인
Apache HTTP를 다시 시작하십시오.
sudo apachectl restart
PHP5와 관련된 오류가 없는지 로그를 확인하십시오. 오류가 없다는 것은 끝났음을 의미하며 MySQL과 PHP5가 제대로 작동합니다. 축하합니다!
/etc/init.d/mysql start
데비안 기반 배포판에있는 경우 출력을 붙여 넣으십시오 . 실패하면/etc/my.cnf
파일에서 올바른 mysql 소켓 파일 경로를 확인 하십시오.