LoginSignup
0
0

More than 1 year has passed since last update.

cakePHP3のプロジェクトをVPSにgit cloneしたときの注意点

Last updated at Posted at 2017-09-16

この記事は?

cakePHP3のwebアプリをローカル環境(xampp)で開発していました。
ひと段落ついたので、そろそろVPSにgit cloneしてローカルから離れてみました。
その時、サーバなどの設定でいろいろと苦労したので、忘備録もかねて注意点をメモしておきます。

前提

VPS : ConoHa
OS : CentOS Linux release 7.3.1611 (Core)
PHP:HP 7.0.20 (cli)
Apache:Apache/2.4.6 (CentOS)

cakePHP3

gitignoreファイルを見てみると、なぜかvendorディレクトリが管理対象外になっています。
これがないと当然動かないので、リモートのプロジェクトにもどうにかしてコピーします。
自分はWinSCPを使ってコピーしました。

httpd.conf

公式ドキュメントにも書いてありますが、DocumentRootは"webroot"にしましょう。
AllowOverrideで、.htaccessの上書きを許可するかどうかを設定しましょう。
ちなみに、以下のようにルートディレクトリで設定したからと言って安心しては以下ません。

<Directory />
 Options FollowSYmLinks
 AllowOverride All
<Directory>

もしhttpd.confのもっと下の行にサブディレクトリ内での上書き権限をAllowOverride Noneとかしてる場所があるかもしれないので気を付けましょう。
自分はそれに気づかず数時間無駄にしました。

.htaccess

ls -laコマンドで、.htaccessを見つけたら忘れずに設定しましょう。
サブディレクトリに.htaccessを見つけた場合、設定が上書きされるので注意しましょう。

パーミッション

chmod -R 775 appNameで権限を変更することができます。
しかし、gitは「権限の変更」も差分として認識するので、このままだとgit statusしたときに大量の差分が出てきてしまいます。
このサイトのやり方に従い、パーミッションは無視するように設定しておきます。

404エラーが出たら

公式ドキュメントに従い、"mod_rewrite"がロードされているかを確認しましょう。
自分はhttpd.confの一番下に、下記を追加しました。

LoadModule rewrite_module modules/mod_rewrite.so

ちなみに、"mod_rewrite"の場所はfind / -name "mod_rewrite"で探せます。

apache

極稀にあることですが、サーバは確かに起動してますか?
httpd.confの設定を変更した後はリスタートしましたか?

ファイヤーウォール

切らなくて大丈夫です。
systemctl status firewalldで起動されてるかを確認しましょう。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0