🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

2回答

8536閲覧

[Wordpress] .htaccessの設定で、index.phpを隠す方法について

xjaPANDA

総合スコア124

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2016/08/10 07:24

ローカルで作った、Wordpressのテンプレートをサーバー側のWordpressにアップしたのですが、パーマリンクにindex.phpが含まれてしまいます。なので、そのページにリンクしていない場合は、このままでもよいのですが、いくつかリンクしているので、リンクできない状態になりました。

そこで解決策を探したのですが、
.htaccessファイルを下記のように設定することで、index.phpの表示を消すことを試しましたが、消えませんでした。(.htaccessファイルはテーマの中にいれました。)

<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule . /index.php [L] </IfModule>

サーバーでは、public_htmlが公開ディレクトリなので、その中にいれたので、RewriteBase は / としました。
どこが問題でindex.phpの表示を消すことができないのかがわからないので、わかりましたら教えてください。よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

Wordpress の管理画面から、パーマリンク設定は変更されましたか?

投稿2016/08/10 15:58

ohesotori

総合スコア150

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

xjaPANDA

2016/08/11 02:01

返信ありがとうございます。パーマリンクでは、サーバーにアップすると勝手に自動で、カスタム設定になっており、index.php//%postname%/ となっています。 なので、index.php/を削除することもできるのですが、 削除すると、投稿したすべてのリンクが無効になるのと、そのあとに投稿した記事のリンクへも無効になるので、再びindex.php//%postname%/ へ戻しました。
xjaPANDA

2016/08/11 21:03

リライト設定をしつつ、管理画面のカスタム構造より、index.phpを削除した結果、URLよりindex.phpを消すことに成功しました。 それぞれ片一方ずつ実行しているだけで、両者同時に試していなかったので、できていなかったようです。
ohesotori

2016/08/12 14:10 編集

良かったですね。投稿データ中のリンクURLはデータベース内を全文検索して、数が少なければ一つずつ、多ければ該当テーブルだけを引っ張って、エクスポートしてテキストエディタで一括変換して、インポートする、なんてことをしたりしています。 serialize されたデータの中にあるとちょっと面倒ですけどね。場所がわかっていれば、あとで管理画面から直せばすみますね。
guest

0

.htaccessファイルはテーマの中にいれました。

.htaccessは、置いたディレクトリ以下へのアクセスにしか効果がありません。トップのindex.phpと同じ場所、あるいはサイトトップにある.htaccessを調節してください。

投稿2016/08/10 07:30

編集2016/08/10 07:31
maisumakun

総合スコア146011

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

xjaPANDA

2016/08/11 01:58

返信ありがとうございます。 テーマの中ではなく、wordpressを設置したルートに置くことにしました。すると、これまで、例えば ルート/index.php/sample のようにしかアクセスできなかったページに、index.php/を抜いて、ルート/sampleでアクセスした場合には、真っ白い画面に 961fddb25b604747b52bffbf?s=128&d=mm&r=g 2x' class='avatar avatar-64 photo' height='64' width='64' />admin •プロフィールを編集 •ログアウト とだけ表示されました。 これまでは、エラー: このリンクは無効です。としか表示されていませんでしたので、すこしだけ変化はありました。ただ、管理者からログアウトしてからアクセスすると、再び、エラー: このリンクは無効です。と表示されてしまいます。変化はあるのですが、完全ではないので、もし分かりましたら教えてください。よろしくお願いします。
xjaPANDA

2016/08/11 21:05

リライト設定をやりつつ、パーマリンク管理よりindex.phpを消すことで解決しました。両方やらいなとダメだったのですね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問