WordPressの多言語プラグイン ‘qTranslate-X’ (バージョン 3.4.6.8) で言語(デフォルト)へと切り替わらない現象があり解決できたのでメモ。
メニューの[Prefrerence]からパネルを開く。
コンパスの有効化
File Watchersの設定(変更があった場合に自動コンパイルするファイルタイプ関連の設定)
(scss)
(sass)
Program : /usr/local/bin/compass Arguments : compile Working directory : $FileDir$ Environment variables : (空) Output paths to refresh : $FileParentDir$/css/$FileNameWithoutExtension$.css
※追記 : sassファイルが多くなって更新時に編集中のファイルのみをコンパイルしたい場合は、Arguments : compile $FileName$ と指定すると良いです。
PHPStormでつかってますが、コードヒントが出てくれて便利です。@includeで一覧したり、
先頭数文字タイプすると候補が絞込まれて、その引数も見れたり
さらに @includeで書いたmixinの部分を Cmd+クリックで compassのソース(mixin)が見れたり。
なかなか便利、wordpressなどの関数も数文字タイプで候補に上がったりで便利すぎて
手放せない開発環境になっています。
(Atom,Sublime,Aptanaとかもどうなのか時間があれば調べてみたいがなかなか><)
Modelのバーチャルフィールドに設定しちゃっておくとラク。
public $virtualFields = array( 'tags' => '(select group_concat(Tag.name) from tags as Tag where Post.id = Tag.post_id)' );
負荷とか考えて普段ははずしておきたい場合は動的に $Model->virtualFieldsは動的に変更できるのでその都度設定すれば問題なさそうです。
ただ、FIND_IN_SETでの検索が $Model->find() の ‘conditions’パラーメータでは実現できなかった。なにか方法あるのかなぁ。
今回は単純な Yearな数字だったたので 無理やり LIke %%で処理 (うーん。
通常の場合だと。
/www/ドメイン名/.htaccess を作成し以下記述
Action myphp-script /php.cgi AddHandler myphp-script .php
として /www/ドメイン名/php.cgi を作成しパーミッションを755とかにして以下を記述
#!/bin/sh exec /usr/local/bin/php-cgi #exec /usr/local/php/5.4/bin/php-cgi #exec /usr/local/php/5.3/bin/php-cgi #exec /usr/local/php/5.2/bin/php-cgi #exec /usr/local/php/4.4/bin/php-cgi
とすればうまくいくけど mod_rewrite の絡みでうまくいかなかったので、.htaccessへの記述とphp.cgiを/www/ドメイン名/app/webroot/以下に移動するとうまくいきました。
/www/ドメイン名/app/webroot/.htaccess
Action myphp-script /php.cgi AddHandler myphp-script .php <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php [QSA,L] </IfModule>
/www/ドメイン名/app/webroot/php.cgi
#!/bin/sh exec /usr/local/bin/php-cgi #exec /usr/local/php/5.4/bin/php-cgi #exec /usr/local/php/5.3/bin/php-cgi #exec /usr/local/php/5.2/bin/php-cgi #exec /usr/local/php/4.4/bin/php-cgi
(2行目のデフォルトのバージョンをコメントアウトして、使いたいバージョンの行のコメントアウトを外す感じで。)
さくらレンタルサーバー、WordPress、MWWPFormプラグイン、独自SSL、WordPress HTTPSプラグインで、設定がうまくいかなかった。
一番の問題は。
http://hogehoge.com/ のドキュメントルートは
/home/ユーザー名/www/hogehoge.com/ となっているが、
https://hogehoge.com/ のドキュメントルードが
/home/ユーザー名/www/ となってしまう点。
これは、SSL証明書がIPアドレスベースでなく別のサーバーからの移行してきたもので、さくらコンパネよりディレクトリを指定できなかったため。
(独自SSLの設定で、ご指定ドメインはご利用いただけません。と表示される。)
ので、/home/ユーザ名/www/.htaccessにmod_rewriteで、
ご希望のドメインかつHTTPSがonならそこを参照してくださいとしてあげる。
<IfModule mod_rewrite.c> RewriteEngine on RewriteBase / RewriteCond %{HTTP_HOST} ^(www\.)?hogehoge\.com$ RewriteCond %{HTTPS} on RewriteRule (.*) hogehoge\.com/$1 [L] </IfModule>
で解決できました。
CakePHP + AWSのロードバランサーでCookieがセキュアにならなかった件。
CookieComponentの設定では、secure = true;となっています。
ソースコードを追っかけたところ、CakeSessionComponentで、
if (!isset($sessionConfig['ini']['session.cookie_secure']) && env('HTTPS')) { $sessionConfig['ini']['session.cookie_secure'] = 1; }
となっている所があり設定にかかわらずenv(‘HTTPS’)が空の場合にはセッションCookieがセキュアにならない設定に。
今回はサイト全てhttpsなのでELB以下のAhache(htaccess)でsetEnvしてセットして対応
setEnv HTTPS 'on'
(本当は、X-Forwardedヘッダー参照して ‘on’ or ”(空)にする対応が必要ですが取り急ぎまで)
# chflags -R nouchg /Volumes/{Drive}/{Machine}.sparsebundle (DiskUtilityで一旦マウント外す。) # hdiutil attach -nomount -readwrite /Volumes/{Drive}/{Machine}.sparsebundle /dev/disk3 GUID_partition_scheme /dev/disk3s1 EFI /dev/disk3s2 Apple_HFS # fsck_hfs -rf /dev/disk3s2 (数時間) # hdiutil detach /dev/disk3s2
その後
/Volumes/{Drive}/{Machine}.sparsebundle/com.apple.TimeMachine.MachineID.plist を編集
・<key>VerificationState</key><integer>2</integer> >>2を1に変更
・<key>RecoveryBackupDeclinedData</key>と<data></date>を削除。
Monaca Localkitでビルドが進まなかったけど再起動したらあっさり始まった。
とりあえず再起動ってのはだいたい試すべきだなと考