サイトアドレスからサブディレクトリ名を削除する(ついでに常時SSL化も)

*自分用の忘備録メモです。

 

細かく言うと、「サブディレクトリ名を表示しないようにする」のほうが近いけど、まあいいでしょう。

 

最初にwordpress でサイトを作るとトップページのアドレスにサブディレクトリ名が入ってますね。

/wp とか/blog とかね。

見栄えもよくないし、wordpress をどこにインストールしたかざっくり分かってしまうので、表示しないほうがよいですね。

 

 

WebFTP で.htaccess があるか確認する

スターサーバーのサーバー管理画面から

FTP 管理画面→対象ドメインの「選択」をクリック→FTPアカウント設定画面に入る。

FTPアカウント設定画面で「WebFTP」のところにある「ログイン」をクリック。

 

WebFTP の画面(タブ)が開くので、ディレクトリツリーの部分でWP をインストールしたサブディレクトリをクリックして開く。

右カラムにサブディレクトリの内容が表示されるので、その中に .htaccess ファイルがあるか確認する。

 

ここでは確認だけで、特にじったりしません。

 

もしなかった場合は、wordpressパーマリンクの設定を変更してみると作成されるっぽいので、そこらへんいじって生成させといてください。

 

 

wordpress の管理画面でサイトアドレスを変更する

wordpress のログイン画面から入って、「設定/一般」を開く。

サイトアドレス(URL)の方のサブディレクトリ名を削除する。

ついでにhttps:// に変更しておく。

wordpressアドレスの方を削除するとログイン出来なくなるので、要注意。

 

 

index.php を編集する

FTPソフトを使ってサブディレクトリ内のindex.php ファイルと .htaccess ファイルをダウンロード。

(スターサーバーの場合、.htaccess ファイルも勝手に出来てると思います。上記の方法で確認してケロ)

 

コードを開けるアプリ、なければメモ帳でまずは index.php を開く。

一番下の行のrequire~で始まる部分を書き換える。

 

変更前

require __DIR__  . '/wp-blog-header.php' );

 

変更後

require __DIR__ . '/サブディレクトリ名/wp-blog-header.php' );

 

*require~以下の部分がサーバーによって(?)は違うみたいですが、wp-blo-header.php の前にスラッシュで区切ってサブディレクトリ名を入れればよい。

 

 

画面で説明するとこんな感じ。

変更するのは赤線の部分な。画像は変更前。

 

 

.htaccess を編集する

スターサーバーでは .htaccess ファイルが勝手に出来てるっぽいので、こっちも編集。

ここで一気に常時SSL化もやっときます(事前に無料独自SSLを追加しておく)。

 

変更前

4行目のRewriteBase~の部分と、8行目のRewriteRule~の部分を変更し、その下に常時SSL化部分を追加。

 

変更後

4行目と8行目にあるサブディレクトリ名を削除し、

9行目以降に

 

RewriteCond %{HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

 

を記入して保存。

(RewriteEngine On は、既に記入されてるので追加で書かなくて大丈夫)

 

 

ファイルをアップロードする

FTPソフトで、index.php と  .htaccessドメイン直下にアップロードします。

 

ここに入ってたらOK。

サブディレクトリ内のindex.php.htaccess はそのまま残しておきます。

あとドメイン直下にindex.html があったら削除。index.html と index.php があった場合index.html が表示されるみたいなので。