Mac x XAMPP x WordPress x プラグイン・自動アップグレードがエラー

■環境
MacBook Air MC505J/A
XAMPP 1.7.3
WordPress 3.1.4-ja

■現象
プラグインやWPの自動アップグレード(自動アップデート)を
するとFTP接続情報が表示されたり、こんな感じのエラーが出る。

—————————-
failed to open stream: Permission denied in 〜〜〜 class-wp-filesystem-direct.php on line 202
ファイルをコピーできませんでした。
インストール失敗
—————————-

対応しても次々と色んなエラーが出てしまい、tmpフォルダに
パーミッションがないだの、接続情報 FTPを接続しろだの
キリがない。

■原因
FTP接続の設定になっていたりApacheの実行ユーザーが
nobodyになっていることなどが原因。

■対応策
ネット上を見ると、これもまたキリがないほど
たくさんの対応策が載っていて、環境によって
大きく異なるようだ。あらゆるフォルダの
パーミッションをchmod 777にしたり、
chown -R _www:_www とか試しまくったが
下記の方法2点のみで解決した。

1.wp-config.php に最下部に下記を記載する。
これがFTP接続情報を回避する方法となる。
 ——————————
define(‘FS_METHOD’,’direct’);
——————————

2./Applications/XAMPP/etc/httpd.conf の
user と group を自分のユーザー名に変える。
コピーできないとかパーミッションがなんとか
言われた場合の回避方法。

 ——————————
138 #User nobody
139 #Group nogroup
140 User 自分のユーザー名
141 Group 自分のグループ名
 ——————————

ちなみにユーザー名の一覧は /etc/password に記載してある。

■備考
色々やってどうしても解決しない場合は、苦肉の策として
XAMPP の代わりに MAMP を使えば
一発で動くとの情報あり。

■参考サイト
[WordPress3.0]テーマ、プラグインインストールでFTPの接続情報を求められる。
XAMPP環境でWordPressの自動アップデートを可能にする 

■英語圏の方用 for English
 If you get error “FTP connetion” or “permission denied” When you upgrade or install plugin, you should try these.

1. write below sentence in wp-config.php.
define(‘FS_METHOD’,’direct’);

2. change the user and group config in /etc/httpd.conf
#User nobody
#Group nogroup
User YourUserName
Group YourGroupName

Mac x XAMPPでバーチャルホストの設定

■環境
Mac OS X 10.6.7 (MacBook Air)
XAMPP Mac OS X 1.7.3

■XAMPPのドキュメントルートにフォルダとファイル設置
 htdocs/index.html
 htdocs/dev1/index.html
 htdocs/dev2/index.html

■hostsの設定
下記を一番下に追記。

/private/etc/hosts

—–
127.0.0.1 dev1
127.0.0.1 dev2
—–

■httpd.confの設定
下記のようにコメントアウトを外して編集。

/Applications/XAMPP/xamppfiles/etc/httpd.conf

—–
# Virtual hosts
Include /Applications/XAMPP/etc/extra/httpd-vhosts.conf
—–

■バーチャルホストの設定
下記のように追記。

/Applications/XAMPP/xamppfiles/etc/extra/httpd-vhosts.conf

—–

DocumentRoot “/Applications/XAMPP/xamppfiles/htdocs/”
ServerName localhost
ErrorLog “logs/localhost-error_log”
CustomLog “logs/localhost-access_log” common

DocumentRoot “/Applications/XAMPP/xamppfiles/htdocs/dev1”
ServerName dev1
ErrorLog “logs/dev1-error_log”
CustomLog “logs/dev1-access_log” common

DocumentRoot “/Applications/XAMPP/xamppfiles/htdocs/dev2”
ServerName dev2
ErrorLog “logs/dev2-error_log”
CustomLog “logs/dev2-access_log” common

—–

■アクセスしてテスト
http://localhost/
http://dev1/
http://dev2/

表示されていれば成功。

■参考サイト

MacでWeb開発-(6) XAMPP for MacでWebサイトを運営(VirtualHost)

[Apache] XAMPP for Mac でバーチャルホストの設定をする

“Object not found!” on Vista with XAMPP

i got problem “Object not found!” access to any directory except default xampp folders and files.

[STATUS]
Vista Home Premium ver6.0 SP1
XAMPP 1.7.1

Apache and MySQL Servie(Svc) installed.
That asked when I installing XAMPP.

[SYMPTOMS]
OK –> access to default xampp folders or files.
NG –> created new folders or files and then access them.

NG means “Object not found!” to display.

[CAUSE]
That problem Vista UAC.
Apache service isn’t running admin permission.
Proberbly, That started user permission.

[RESOLUTION]
1. right-clicking “xampp-control.exe” then clicking the “Run As Administrator”.
2. reselect “Svc” check-box @ XAMPP Control Panel.
3. restart Apache service.

[COMMENT]
You shouldn’t check Apache or other service when ask you check install services.