1.Lv9をやめてHXPに移る。 2.CakePHPのwebroot以下のcssやimgを読み込んでくれない問題解決

Lv9ではPHP->PDOを用いてのMySQLへのアクセスができなかった。HXPは簡単な審査が必要らしいが、日本のサーバーだし、無料だし、サポートもよさそうなのでこちらに移ることにした。こっちだと簡単にPDOでのMySQL接続も可能。当面の問題は解決。


では、ドットインストールの続きをやっていこう。といっても、7回目の講義、scaffoldを使ってもNot foundとなってしまうので、そこをなんとかしよう。

  1. まず、バージョンを2.2系に落とす。 --> やっぱだめ。
  2. CakePHPのトップを開くと「 URL rewriting is not properly configured on your server」とある。これが原因とあたりをつけ、検索。http://www.phpbook.jp/cakephp/install/index3.htmlCakePHP 2で「mod_rewriteが動いていない」と怒られた場合の暫定的な対策 | アイビースターのサイトがみつかる。
  3. あとのサイトに「原因がわかりました。今回、CakePHPをアップロードする前にApacheの設定でルートディレクトリを変更していました。このときhttpd.confのDocumentRootは変更したのですが、「」のパスを変更するのを忘れていました。それに気がつき、早々に対処したところ無事起動。単なる自分のおっちょこちょいでした。お騒がせしてすみませんでしたm(__)m」とありました。これか! と以下のようにhttpd.confの変更を行った。元のはコメントして、その下に新しい行を追加。
#DocumentRoot "/var/www/html"
DocumentRoot "/home/vagrant/public_html"
:
:
#<Directory "/var/www/html">
<Directory "/home/vagrant/public_html">
:
:
#Alias /blog/ "/home/vagrant/public_html/blog/"
<Directory "/home/vagrant/public_html/blog/">
    Options FollowSymLinks
    AllowOverride All
</Directory>


これで解決。2.3でもちゃんと動く(下は、修正前と修正後)。はあ、はまったなあ。





 気を取り直してScaffoldが動くことも確認し、続きをやっていこう。