質問: phpのconfigureのオプションにつきまして 日頃windowsメインでlinuxをあまり使わない者です。 今回、とある理由でcentos5.5にphp5.2とmysql4.0の環境を作る必要が出てきました。それで、それらをソースからコンパイルしてインストールしてみたのですが、phpのmysql_connect()で以下のようなエラーが出て、原因がわからず困っています。 can't connect to local mysql server through socket '/tmp/mysql.sock' (13) phpもmysqlも単体では正常に動いているようです。データベースも作れました。 それで色々調べていたのですが、/tmp/mysql.sockのアクセス権限を777にしたり、 phpとmysqlが/tmp/mysql.sockを介する設定になっているかを確認しましたが、いずれも問題無さそうです。 それで、phpinfo()の結果をさくらサーバーのそれと比べてみたところ、 configure commandのところが全然違うことがわかりました。 今回構築した環境では、 './configure' '--with-apxs2=/usr/sbin/apxs' '--with-mysql=/usr/local/mysql' ですが、 さくらサーバーは、 './configure' '--prefix=/usr/local/php/5.2' '--with-config-file-path=${prefix}/etc' '--with-config-file-scan-dir=${prefix}/etc/conf.d' '--enable-force-cgi-redirect' '--with-openssl=/usr/local/ssl' '--with-zlib=/usr' '--with-curl' '--enable-exif' '--with-pcre-dir=/usr/local' '--with-gd' '--with-jpeg-dir=/usr/local' '--with-png-dir=/usr/local' '--with-ttf' '--with-freetype-dir=/usr/local' '--with-gettext=/usr/local' '--with-gmp=/usr/local' '--with-iconv=/usr/local' '--enable-mbstring' '--with-mcrypt' '--with-mysql=/usr/local' '--with-mysqli=/usr/local/bin/mysql_config' '--with-pdo-mysql=/usr/local' '--with-snmp=/usr/local' '--enable-soap' '--with-xsl=/usr/local' '--enable-zip' と非常に多いです。 これらは関係あるでしょうか。初歩的な質問で恐縮ですが、ご存知の方がいらっしゃいましたら、ご教示いただけましたら助かります。 よろしくお願いします。
回答: /tmp ディレクトリのアクセス権限は合っていますか? configure オプションの数は関係ありませんが、mbstring などは必要になるんじゃないかと思うので、追加しておいた方がいいでしょうね。 他のオプションは必要なモノだけチョイスして有効にすればいいのですが、オプションを有効にするためには関係するライブラリのインストールも必要になるので注意しましょう。