0

重大な問題が発生しており、何が起こっているのかわかりません... この Wordpress を利用したポータルで複数の問題を引き起こしている一般的な問題を特定します。

再現する手順:

  1. URL にアクセスしてください: http://gamersgeographic.com/en/ (またはこのサイトの任意の投稿)
  2. #abc または #anything を URL に追加します
  3. URL は 1 秒間解決を試み、魔法のように「#」を削除し、代わりに /abc または /anything に変更されますが、もちろん存在せず、404 ページが見つかりません。
  4. #abc の付いたローカル アンカーが存在する場合でも、動作は同じです。

ここで、次の場合を考えてみましょう。

  1. http://gamersgeographic.com/monster-hunter-diary-1/ にアクセスしてください。
  2. コメント リンクには、コメントの有無に応じて #comments または #respond が追加されます。
  3. 両方のアンカーが単一の投稿ページに存在します
  4. それでも、それらを見つけた後、/comments にリダイレクトし、404 を返します
  5. #comments を含む直接 URL は機能します

パーマリンクとの組み合わせはいくつか試しましたので問題ありません。私は自分のコメントリンクジェネレーターをphpで書きました href="#comments"
が、まだ運がありません...

theloop.php 内の関数のコードなどについてさらに詳しい情報が必要な場合は、お知らせください。

前もって感謝します !よろしく

.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
4

3 に答える 3

2
于 2013-09-13T05:08:01.283 に答える
0

ページ ブックマークの使用方法は、ご存じのとおり、アンカーの href="" が #some-place を指すことです。これを行うには、#some-place が、移動したいページ内の要素の ID である必要があります。

例えば:

http://gamersgeographic.com/monster-hunter-diary-1/#respond

そのページの id="respond" を持つ要素に移動する必要があります。

その ID を持つ要素が存在しない場合、その要素に移動することはできず、404 Not Found が発生する理由になる可能性があります。ただし、要素が適切な ID を持つページに実際に存在し、それでも 404 にリダイレクトされる場合は、Web サーバーの構成をチェックして、何らかの方法で # をフィルタリングしていないことを確認することをお勧めします。

于 2013-09-13T04:45:15.463 に答える
0
<link rel="canonical" href="URL OF YOUR HOMEPAGE HERE>  

<head></head>これをセクションのheader.phpに追加してから試してください。404 エラーが発生することはありません。

于 2013-09-13T04:35:25.197 に答える