3

サブディレクトリに WordPress をインストールしています。フロント ページの URL の末尾にスラッシュを付けないでください。WordPress の管理画面で、パーマリンクの末尾にスラッシュがないように設定しました。ただし、この WordPress インストールはサブディレクトリにあるため、末尾のスラッシュはまだフロント ページに表示されていました。そこで、ルート ディレクトリと WordPress インストール ディレクトリにある .htaccess ファイルを操作して、フロント ページからも削除しようとしました。動作していないようで、WordPress がフロント ページに末尾のスラッシュを追加し、PHP 自体のどこかにリダイレクトしている可能性があると思います。/wp-includes/canonical.phpファイル。そのファイルには、常に先頭ページに末尾のスラッシュを追加することを特に言及している行がいくつかありますが、私はそれらをコメントアウトしましたが、末尾のスラッシュはまだ表示されています。

現在のセットアップでは:

  • フロントページを除く WordPress インストールのすべてのページがロードに失敗します -- 代わりに、ホスティングのルートディレクトリにある 404 ページが表示されます
  • /wordpressdirectory/wordpressdirectory/フロントページにリダイレクトして表示します
  • /wordpressdirectory/リダイレクトせず、フロントページも表示します
  • /wordpressdirectory/index.phpにリダイレクトし/wordpressdirectory/、フロント ページも表示します

ルート ディレクトリの .htaccess ファイルは次のようになります。

Options -Indexes
DirectorySlash Off
RewriteEngine On

RewriteRule ^wordpressdirectory$ /wordpressdirectory/index.php [L,R=302,E=LOOP:1]

また、WordPress のインストール ディレクトリにある .htaccess ファイルは空になりました。WordPress に付属するデフォルトの RewriteRules はすべて削除しました。

ただし、念のため、WordPress インストール ディレクトリの .htaccess は次のようになっています (すべてデフォルトで、個人的な編集はまだありません)。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpressdirectory/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpressdirectory/index.php [L]
</IfModule>
# END WordPress
4

0 に答える 0