[vine-users:081959] Re: Vine6.0にてOpenPNEの運用
T.Kabu
kabu @ fvg-on.net
2012年 7月 5日 (木) 10:25:33 JST
こんにちは、蕪木@かいさー、です。
どうやら彩草塗さんのやりたいことが今回のセットアップだったみたい
ですね。:-)
ちなみにOpenPNEはユーザー単位でもインストールが可能ですが、それは
彩草塗さんがご認識のように、MySQLのユーザー権限設定や、Apacheでの
ユーザー権限とか、この辺の関係を把握していないと難しいです。
・サーバー上では各ユーザー別にいろいろとあれこれ分かれます。
・が、Apacheの運用(設定)のしかたにもよりますが、Apacheではそれらの
コンテンツをどのユーザーとして見せるか(デフォなら全部同じapache)
が鍵になりますね。(OpenPNEの各ファイルなどのパーミッションとか)
・ですが、apacheで動くコンテンツだとしても(仮にtaroやhanakoに分け
たとしても)、MySQLにアクセスするユーザーは「別途指定できる」
(しかも実ユーザーとしてサーバーに存在しないユーザー名でもOK)
なので、
> 残念ながら、MySQLのユーザーと権限、Vine自体のユーザーと権限の関係がわ
> かってません。
> ユーザー権限で、OpenPNEのデータベースをいじれないのかな、
> と思ったりします。
はい、いじれません。
でももう判りましたよね。判れば「なーんだ」で終わりです。 :-)
ちなみに先のテストOpenPNEも、
・コンテンツ(OpenPNE)の所有者はrootです(インストール実行して必要な
ディレクトリ/ファイルは777とか644にされているけど)
・が、コンテンツ(PHP)の実行はapacheでされている
・けど、MySQLへのアクセスはopenpneという実ユーザーとしては存在しない
ユーザー(でもMySQLのユーザーとしては設定した)としてアクセスしている
わけです。
で、MySQLのユーザー設定がなされていないエラーが
> PDO Connection Error: SQLSTATE[42000] [1044] Access denied for user
> ''@'localhost' to database 'hoge'
まさにこれです。
もうこれでユーザーの相関関係が理解できたと思いますので、あとは
はやいですよ。がんばってください。:-)
さらに補足しておくと、サーバーの実ユーザー名とMySQLへの登録ユーザー名
を同じにする場合には、パスワードを違うものにするとかもセキュリティ的に
した方がいいかも、なものです。なぜならPHPにDBへのパスワードをベタに書く
わけですから…(というか、ユーザー名は別にするのがベターですが)
vine-users メーリングリストの案内