2013/11/30

IIS 8.5 + WordPress 環境で URL をカスタマイズする


Windows Server 2012 R2 上の IIS 8.5 + WordPress 3.7.1 で URL をカスタマイズします。

WordPress が生成するデフォルトの URL は、http://hostname/?p=1 という形式になり、動的で見た目にもちょっとショボい感じがします。SEO にも若干影響があると言われています。最近は検索エンジンも賢くなって以前ほどの影響はないようですが。

WordPress で URL をカスタマイズするためには、以下の環境がそろっている必要があります。

  • IIS 7 以上
  • FastCGI インストール済み
  • URL Rewrite Module 2 インストール済み

以下の記事に従って、Web Platform インストーラー から WordPress をインストールした場合は条件を全て満たしています。

WordPress がインストールされているフォルダのルート(直下)に、web.config という名前で以下のファイルを作成します。なお、USERS グループに WordPress のフォルダに書き込み権限があれば、WordPress の設定で自動作成されます。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
      <rule name="wordpress" patternSyntax="Wildcard">
        <match url="*"/>
          <conditions>
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true"/>
          </conditions>
        <action type="Rewrite" url="index.php"/>
      </rule></rules>
    </rewrite>
  </system.webServer>
</configuration>

WordPress の管理画面にログインし、設定 >> パーマリンク設定 からパーマリンク設定画面を開きます。

pic01

ここでは、URL を 年/月/日/タイトル を使用したいと思うので、カスタム構造に以下の値を入れて変更を保存します。

/%year%/%monthnum%/%day%/%postname%/

pic02

しかし、このままだと URL に日本語が含まれると 404 エラーが表示されて正しく動作しません。

そのために、コマンドプロンプトを管理者として起動し、以下のコマンドを実行後、IIS を再起動します。本来は IIS 7.5 用の設定なのですが、IIS 8.5 でも問題なく動作しました。なお、レジストリをいじるので自己責任で注意して行ってください。

reg add HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\w3svc\Parameters /v FastCGIUtf8ServerVariables /t REG_MULTI_SZ /d REQUEST_URI\0PATH_INFO

参考:ブログをカスタマイズする(7) – IIS Rewrite モジュールの追加とか | S.F.Page

レジストリをいじるのがイヤな場合は、URL にタイトルではなく、ポスト ID を埋め込むという方法もあります。

/%year%/%monthnum%/%day%/%post_id%/

以下のようにカスタマイズ後の URL で表示できれば設定は完了です。

pic03

 

■参考


スポンサーリンク


このエントリーをはてなブックマークに追加




Twitter ではブログにはない、いろんな情報を発信しています。


コメント

コメントを書く



プロフィール

  • 名前:fnya
    経歴:
    SE としての経験は15年以上。様々な言語と環境で業務系システム開発を行い、セキュリティ対策などもしていました。現在は趣味SE。

    Twitter では、ブログでは取り上げない情報も公開しています。


    ブログについて

    このブログは、IT、スマートフォン、タブレット、システム開発などに関するさまざまな話題を取り上げたり、雑感などをつづっています。

    現在、Enty で支援を受け付けています。もしよければご支援ください。



    >>ブログ詳細
    >>自作ツール
    >>運営サイト
    >>Windows 10 まとめ

    Twitter のフォローはこちらから Facebook ページはこちら Google+ページはこちら RSSフィードのご登録はこちらから