投稿日:2018/01/18
更新日:2018/06/21
翻訳でのマルチサイト化やSSLリダイレクトなど 形態が増えてきたので 記述のサンプルを載せときます。
このままベタッと貼り付けて使えるはず。
18/6/21追記
GMOと旧EPRESSサーバーでSSL化後の必要記述が違うので書き直し
GMOサーバー
18/6/21追記
GMOと旧EPRESSサーバーでSSL化後の必要記述が違うので書き直し
GMOサーバー
- 標準的な.htaccess
- マルチサイト / サブディレクトリ型
- 標準的な.htaccess
- SSLリダイレクト
- マルチサイト / サブディレクトリ型
- マルチサイト / サブディレクトリ型 / SSLリダイレクト
GMOサーバー
SSLかどうかは問わない。マルチサイトかどうかだけで書き分ける。1. 標準的な.htaccess
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
2. マルチサイト / サブディレクトリ型
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
</IfModule>
# END WordPress
旧EPRESSサーバー(epressd.jp)
1. 標準的な.htaccess
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
2. SSLリダイレクト
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress#ORIGINALDOMAIN_SETTING_START
RewriteCond %{HTTPS} on [NC,OR]
RewriteCond %{HTTP:HTTPS} on [NC]
RewriteRule ^(.*)$ - [L]
RewriteCond %{HTTPS} !on [NC]
RewriteCond %{HTTP:HTTPS} !on [NC]
RewriteRule ^(.*)$ https://%{HTTP:ORG_HTTP_HOST}%{HTTP:ORG_REQUEST_URI} [L,R=301]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP:ORG_HTTP_HOST}%{HTTP:ORG_REQUEST_URI} [L,R=301]
#ORIGINALDOMAIN_SETTING_END
3. マルチサイト / サブディレクトリ型
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
</IfModule>
# END WordPress
4. マルチサイト / サブディレクトリ型 / SSLリダイレクト
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
#ORIGINALDOMAIN_SETTING_START
RewriteCond %{HTTPS} !on [NC]
RewriteCond %{HTTP:HTTPS} !on [NC]
RewriteRule ^(.*)$ https://%{HTTP:ORG_HTTP_HOST}%{HTTP:ORG_REQUEST_URI} [L,R=301]
#ORIGINALDOMAIN_SETTING_END
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
</IfModule>
# END WordPress