###### 😵 困ったとき

# レンタルサーバで動かない
----------------------------------------------------------------------

ローカルの Lampman 環境では稼働しているのに、FTPでレンタルサーバにアップロードなどすると、エラーになってしまう場合があります。

Dockerはあくまで擬似的なLinuxコンテナですので、ホストOS側のファイルシステムの違いなどが影響して本番サーバと異なる挙動をするケースが多々あります。**Lampmanで動いてるから本番切り替えは１時間あれば十分だわー**などと思っていると、**おおいにハマる**のでご注意ください。  
以下、ヒントです。

- .`htaccess` でそのサーバ専用の何かをしなくちゃいけない（PHPハンドラーの設定や、Optionsディレクティブの設定など）
- PHPエラーで"クラスが見つからない"と出るのは、クラス名の大文字/小文字を間違っている可能性がある（Windowsホスト上だと大文字/小文字の区別無くてもエラーにならない模様）
- DB接続情報が正しいか再度確認を。サーバによっては `localhost` だとダメで、 `127.0.0.1` にする必要があるところもある。
- ajaxなどが304エラーを返す場合は、サーバ側セキュリティ設定でWAFが効いてる可能性があるので無効にするなど。
- ファイルアップロードの機能がある場合、パーミッション0600で保存されてしまうことがあるので、0644等になるように修正
- PHPのエラー表示設定が違う場合があり、これにより挙動が変わってくる場合もあります。

大事なのは、**Dockerを過信しないこと**と、**必ず原因を突き止められると信じる心**です。
