プロジェクト

全般

プロフィール

Bug(バグ) #1670

未完了

セットアップ時にSocketにunix_socketを指定すると表示する段階でエラーになる

pnetan   さんが約14年前に追加. ほぼ5年前に更新.

ステータス:
New(新規)
優先度:
Low(低め)
担当者:
-
対象バージョン:
開始日:
2010-10-13
期日:
進捗率:

0%

予定工数:
3.6 で発生するか:
No
3.8 で発生するか:
Unknown (未調査)

説明

http://sns.openpne.jp/diary/25289 より転記

結論を先に書くと、動作は確認できていません。
resin側のバグ?と思われる点に躓いています。

PNE側で注意の必要な点が2点あったので記述しておきます。

セットアップは通常通りphpから行うので変化ありません。
>ProjectConfiguration.class.php.sample、OpenPNE.yml.sampleをコピー
とりあえず中身の訂正は動いてからということで。
>./symfony openpne:install

セットアップでSocketを聞かれますが、unix_socketを指定すると表示する段階でエラーになりました。
>/var/www/webapps/ROOT/pne/lib/plugin/opPluginManager.class.php:164: Fatal Error: PDO mysql: does not support unix_socket
config/databases.ymlを後から修正すれば問題ありませんでした。

他に原因もありそうですが、Javaに読みかえる部分でしょうか。
画像1枚目のようなエラーになりました。
Symfonyのエラー画面ですが、Javaの例外になってしまっています。
トレースもほとんどできないので、開発に使うと凄い苦労しそうです。

正しい対処かはわかりませんが、
ProjectConfiguration.class.phpに以下を追加。
>define('PHP_EOL', "\n");

そうすると画像2のエラー。
resin側での実装が不十分なんでしょうか?
Java側のソースを参照してみると実装はされているようなのですが……。

対処法として思いついたのは2通り
①使っている関数をコメントアウト
力押しでやってみましたが、同じ関数名なだけの部分があるので結局断念。
ヘッダー部分は表示されるも、ログインフォームまで出ない状況でした。
何故かプライバシポリシーと利用規約だけ 英語で 表示できていました。
この方法はちょっと問題がありそうなので断念です。

②ResinのJava部分からコンパイル
すぐにはできそうになかったのでとりあえずここまでで作業中断。

おそらくこれを乗り越えた後にはmod_rewriteがどうなるか、ということで、.htaccessを変換する作業になるかと思います。
結局はApacheと平行動作させるのが一番楽な手段になりそうですが……。

他の形式にエクスポート: Atom PDF