残念ながら原因がわかりません。原因を絞る時の私の方法を書いてみますので、よかったら参考にしてみてください。
ローカルで動くということですので、まずはローカルとサーバでのphpinfo()の出力結果を見比べてみて下さい。ちょっとしたMySQLの設定などもありますので、もしかしたら違うところや足りないところがあればそれが原因かもしれません。
phpのエラーメッセージを確認してみて下さい。エラーメッセージが表示されなくてもページのソースに書かれているかもしれませんし、ログファイルに出力されているかもしれません。phpの設定ではログファイルにエラーメッセージを保存する設定もあります。最初に呼ばれるスクリプト(この件ではindex.php)の先頭に
ini_set('log_errors',1);
ini_set('error_log','/例えばスクリプトと同じフルパス/php.log');
を書いておくと、それが実行された時点から独自のログファイルに保存できると思います。
ただし、このログファイルの指定は「
誰でも変更できるファイルをフルパスで記述」ですので注意して下さい。対象のスクリプトの実際のフルパスはphpinfo()で確認できます。
サーバによってはMySQLのユーザ設定をやっておく場合もあると思いますが、phpのエラーメッセージが確認できればある程度特定できると思います。
改行コードをUNIXにしたということですと、ちょっと険しい道のりになるかもしれませんが頑張ってみて下さい。