2015年7月31日金曜日

WordPress サイトを iPhone アプリにしてみた // Speaker Deck

【WordPress】外部SMTPを使ってメール送信した時のタイムアウトエラーの対処 - haru_skywalker's blog

WordPress からのほぼすべての通知を XMPP で送信するプラグイン wp_mail to XMPP | 半月記

PHPで日本語メールを送る – 応用編 (添付ファイル、HTMLメール) - EC studio 技術ブログ

Contact Form 7プラグインでGmailのSMTPサーバを使ってメール送信

loginぺージアクセスのたびに管理者にEメールを送信してくれるWP Login Alerts by DigiP

Revision Control - WordPressのリビジョンを削減してデータベース容量を減らせるプラグイン - ネタワン

Better Delete Revision
http://netaone.com/wp/revision-control/

チラ見6分で理解!Googleアナリティクスの見方に困る初心者に教えたいコツ

http://websae.net/google-analytics-20140207/

2015年7月30日木曜日

wp_mail関数でちゃんとメールを送信する方法

wp_mail関数でちゃんとメールを送信する方法 | Manul Tech
http://tech.manulneko.com/2014/09/11/140

PHP でメールを送ると subject が文字化けする

[FYI] PHP でメールを送ると subject が文字化けする | Eriane ver 0.8.3
http://nakoruru.jp/?p=485



mb_language("uni");
mb_internal_encoding("utf-8″);
$subject = "テスト";

$subject = mb_convert_encoding($subject,'utf-8′,mb_detect_encoding($subject));
$subject = mb_encode_mimeheader($subject,'iso-2022-jp');

2015年7月28日火曜日

画像への直リンクを防ぐ .htaccess

http://gatespace.jp/2012/06/29/image-403-htaccsess/


Code begin ------------------------------------------------------------------------
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?example.com [NC]
RewriteRule .(jpg|jpeg|png|gif)$ - [NC,F,L]
</IfModule>
Code end------------------------------------------------------------------------

複数のサイトを指定するには、3行目を増やせばよい

WordPress - コメント欄停止・コメント削除

http://kwski.net/wordpress/1086/

2015年7月27日月曜日

WordPressディレクトリのパーミッションをセキュアに

http://wordpress.honobono-life.info/wp-config/wordpress%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%81%AE%E3%83%91%E3%83%BC%E3%83%9F%E3%83%83%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92%E3%82%BB%E3%82%AD%E3%83%A5%E3%82%A2%E3%81%AB/


(2)Webサーバー実行ユーザーの書込み権限が必要なディレクトリ、ファイル



参考サイトによると下記があります。

・.htaccessファイル

パーマリンク設定などでWordPressから自動編集させたい場合は必要。(自動編集させたいので私は付与しました。)

・/wp-content/

ユーザーアップロードファイル、テーマ、プラグインなど。一部のプラグインなどで書込み権限が必要になる事がある。(公式サイトに必要とあったので私は付与しました)

・/wp-content/themes/

テーマファイル。WordPress管理画面のテーマエディタを使用する場合は、Webサーバープロセスによって書込み可能である必要がある。(今まで使用した事がなかったので、私は現状は付与していません。)


(3)設定変更手順



ここでは、WordPress用ディレクトリが"/var/www/html/wp"として手順を記載します。

①ディレクトリの権限を変更

/var/www/html/配下の全ディレクトリの権限を"750″にします。

find /var/www/html/ -type d -exec chmod 750 {} \;

②ファイルの権限を変更

/var/www/html/配下の全ファイルの権限を"640″にします。

find /var/www/html/ -type f -exec chmod 640 {} \;

③ファイル、ディレクトリの所有者、所有グループを変更

ファイル所有者をファイル転送ユーザー、グループをWebサーバー実行ユーザーに修正します。

chown -R ftpuse:apache /var/www/html/wp/

④.htaccessファイルの権限を変更

グループに書き込み権限を付与します。

事前確認
find /var/www/html/wp/ -name .htaccess -exec ls -al {} \;
権限変更
find /var/www/html/wp/ -name .htaccess -exec chmod 660 {} \;
事後確認
find /var/www/html/wp/ -name .htaccess -exec ls -al {} \;

⑤wp-contentディレクトリの権限変更

グループに書き込み権限を付与します。

find /var/www/html/wp/ -type d -name wp-content -exec ls -ald {} \;
find /var/www/html/wp/ -type d -name wp-content -exec chmod 770 {} \;
find /var/www/html/wp/ -type d -name wp-content -exec ls -ald {} \;

⑥不要なファイル、ディレクトリに書込み権限が付与されていないか確認

念のため④、⑤で設定した以外に書込み権限が付与されていないか確認します。

その他ユーザーに書込み権限が付与されていないか
# find /var/www/html -type d -perm -002
# find /var/www/html -type f -perm -002

所有グループに不要な書込み権限が付与されていないか
# find /var/www/html -type d -perm -020
/var/www/html/test/wp-content
# find /var/www/html -type f -perm -020
/var/www/html/wp/.htaccess

当面はこの設定にしておき、問題が発生したら必要に応じて権限を追加しようと思っています。

(2013年11月2日追記) サイトマップファイルに書込権限必要

管理画面(左サイドメニューの「設定」→「XML-Sitemap」)のサイトマップの画面を見ると、
"Result of the last build processes・・"の欄に赤字で記載されていました。
 There was a problem writing your sitemap file.
 There was a problem writing your zipped sitemap file.
Webサーバーのプロセスが書き込む事が出来ずエラーとなっているようです。

# ls -al sitemap.xml*
-rw-r—– 1 ftpusr apache 44464 Nov 2 07:28 sitemap.xml
-rw-r—– 1 ftpusr apache 5182 Nov 2 07:28 sitemap.xml.gz

ファイルの所有グループであるapacheユーザーに書込権限を付与しました。
# chmod 660 sitemap.xm

その後、管理画面で手動でサイトマップを再構築すると、エラー表示がなくなりました。

スマホだと反応が遅れる :hover を心地良くする方法 : Sensebahn

2015年7月8日水曜日

phpMyAdminの初期設定

config.inc.phpの作成とパスフレーズの設定
http://www.dbonline.jp/phpmyadmin/install/index4.html


phpMyAdminのIPアドレス制限(アクセス制限)を解除する
http://kidatti.livedoor.biz/archives/37547860.html

Linuxexpert - .htaccessでBASIC認証とIPアドレス制限を併用する-WebServer/.htaccessでBASIC認証とIPアドレス制限を併用する-PukiWiki

http://linuxexpert.ne.jp/modules/pukiwiki/123.html

.htaccessでBASIC認証とIPアドレス制限を併用する


★IPアドレスがAかBで、なおかつBasic認証に通ればアクセス可能

deny from all
allow from A/255.255.255.255
allow from B/255.255.255.255

AuthType Basic
AuthName "Restricted Files"
AuthUserFile /var/pass/.htpasswd
require valid-user

satisfy all

satisfy allがポイントで、これで「条件すべてを満たせばアクセス可能」となります。
satisfy anyの場合「いずれかの条件を満たせばアクセス可能」となってしまいます。

CSS3 box-shadowジェネレーター

2015年7月4日土曜日

正規表現 - 完全一致させる

四章第二回 正規表現 — JavaScript初級者から中級者になろう — uhyohyo.net
http://uhyohyo.net/javascript/4_2.html

^abc$

とするとどうでしょう。abcが最初であり最後であるということだから、

abcdef  ‾‾‾          
aaaaabc      ‾‾‾  

にはマッチせず、

abc  ‾‾‾  

という、文字列が完全にそれと一致する場合のみマッチします。