WordPress をフロント Nginx のリバースプロキシ下で運用する場合に 管理画面を SSL に強制する設定

Nginx をフロントにおいて高速化するのは常套手段ですが、そのときに WordPress の wp-admin(管理画面)は SSL を有効にしたいときの設定方法です。 Nginx の設定 # HTTP server # server { listen 80; location / { proxy_redirect off; proxy\_set\_header Host $host; proxy\_set\_header X-Real-IP $remote_addr; proxy\_set\_header X-Forwarded-Host $host; proxy\_set\_header X-Forwarded-Server $host; proxy\_set\_header X-Forwarded-For $proxy\_add\_x\_forwarded\_for; proxy_pass http://127.0.0.1:8080/; } } \# HTTPS server # server { listen 443; ssl on; ssl_certificate ssl/cert.pem; ssl\_certificate\_key ssl/cert.key; ssl\_session\_timeout 5m; ssl_protocols SSLv2 SSLv3 TLSv1; ssl_ciphers HIGH:!aNULL:!MD5; ssl\_prefer\_server_ciphers on; location / { proxy_redirect off; proxy\_set\_header Host $host; proxy\_set\_header X-Real-IP $remote_addr; proxy\_set\_header X-Forwarded-Proto https; proxy\_set\_header X-Forwarded-Host $host; proxy\_set\_header X-Forwarded-Server $host; proxy\_set\_header X-Forwarded-For $proxy\_add\_x\_forwarded\_for; proxy_pass http://127.0.0.1:8080/; } } 環境変数 HTTP_X_FORWARDED_PROTO を使って Nginx が受けたのは http か https かを後ろのサービスに伝えます。 ...

2012年5月7日 · Toshimitsu Takahashi

WordPress で外部サイトの RSS フィードをページ内に出力して表示するには

あるサイト内に別のサイトの RSS フィードをページ内に表示するにはウィジェットを使うと簡単です。 しかし、ページのコンテンツの一部として表示するには自由にタグ付けや情報を取り出して出力したい。 WordPress 2.8 以降には fetch_feed というキャッシュ機構を備えるフィード取得関数が用意されてます。 Function Reference/fetch feed « WordPress Codex ※使うには、feed.php をインクルードしておく必要がある。 これを使って ul, li のリストとしてはてなダイアリーの RSS を取得して書き出す処理を作ったので載せておきます。 fetch_feed は SimplePie を使って実装されているので、各フィードのエントリに関する項目は SimplePie Documentation: SimplePie_Item を参考にできます。 <?php include_once(ABSPATH . WPINC . '/feed.php'); $rss = fetch_feed('http://d.hatena.ne.jp/tilfin/rss2'); $rss_items = $rss->get_items(0, $rss->get\_item\_quantity(5) ); if ($rss_items) { foreach ( $rss_items as $item ) { $title = $item->get_title(); $pos = strpos($title, "\] "); if ($pos !== false) { $title = substr($title, $pos + 2); } echo '' . $item->get_date('Y.n.j') . ''; echo '' . $title; echo ''; } } ?> エントリーのタイトルから [タグ] は取り除くようにしています。自分は最後のタグとタイトルの間にスペースを1つ入れるルールにしているため上記のような簡略処理で書きました。

2010年3月18日 · Toshimitsu Takahashi

WordPress で LDAP 認証 Simple LDAP Authentication を使った

WordPress も LDAP で認証させたいと思ったので設定というよりもプラグイン情報のメモ。 「ldap」で検索するとたくさんプラグインが出てきて迷うが、Simple LDAP Authentication が最初にうまく動いたのでこれを使った。 Simple LDAP Authentication WordPress › Simple LDAP Authentication « WordPress Plugins 使い方は作者さんのページを参照

2009年6月6日 · Toshimitsu Takahashi

WordPress の wp-content に SELinux で httpd に書き込み生成権限を与えるには

WordPress のテーマファイルやプラグイン、アップロードしたファイルの置き場所は wp-content ディレクトリ以下になる。 ここに対して、httpd (Apache) で書き込み生成権限を付加する必要がある。その SELinux の設定についてのメモ。 権限の確認 httpd_t のエントリーを見てみると、タイプ httpd_cache_t がファイル、ディレクトリ、シンボリックリンクともに読み書き作成権限が付加されている。 # sesearch --allow -s httpd_t allow httpd_t httpd_cache_t : file { ioctl read write create getattr setattr lock append unlink link rename }; allow httpd_t httpd_cache_t : dir { ioctl read write create getattr setattr lock unlink link rename add_name remove_name reparent search rmdir }; allow httpd_t httpd_cache_t : lnk_file { read create getattr setattr unlink link rename }; コンテキストを変更 wp-content 以下に httpd_cache_t を設定する。 ...

2009年5月31日 · Toshimitsu Takahashi

WordPress のフィード配信を 410 Gone にするには

WordPress の RSS, Atom フィードの URL は /feed/rss, /feed/atom/ など /feed/ 以下にある。 mod_rewrite で /feed/ 以下を 410 Gone にして、フィードが配信されなくなったことを知らせてみる。 .htaccess RewriteRule ^feed/.*$ - \[G,L\] ※きちんと解釈してくれるかどうかはその FeedFetcher による。

2009年3月6日 · Toshimitsu Takahashi

WordPress でトラックバックURLを載せる

WordPressはそのままだと(テキトーだが…)、トラックバック URL が出ない。 パーマネントリンクに /trackback/ が付いたものになるらしいが表示したかった。調べたら trackback_url という関数が見つかった。 自分のテーマの functions.php に下記を追記した。my_trackback_link を呼び出すと、クリップボードにコピーしてくれるリンクを作って表示する。ただ、IEでしか効かない。 1 2 3 4 5 6 7 <?php function my\_trackback\_link() { echo "<a title=\\"クリックすると、トラックバック URL をクリップボードにコピーします。\\" href=\\""; echo trackback_url(); echo "\\" onClick=\\"window.clipboardData.setData('text', this.href); return false;\\">trackback URL</a>"; } ?>

2007年6月1日 · Toshimitsu Takahashi