2

問題は、プレーヤーの壁紙を含むページがあり、ユーザーがプレーヤー名をクリックすると、次のページに移動することです。

player.php?name=Cristiano-Ronaldo

名前の値を取得し、$_REQUEST['name']書き直そうとしています:

mysite.com/player.php?name=Cristiano-Ronaldo

mysite.com/Football-Players/Cristiano-Ronaldo

私はネット上で多くの提案を読んで試しましたが、運が悪く、私の中にたどり着いた最高のものです.htaccess

Options +FollowSymlinks -MultiViews
RewriteEngine on

RewriteCond   %{QUERY_STRING} ^name=([-a-zA-Z0-9_+]+)

RewriteRule   ^players/player\.php$ /Football-Players/%1 [L,R=301]

RewriteRule   ^Football-Players/%1 /players/player.php?name=%1 [L] 

しかし、私はまだ 404 Not found エラーが発生します。

Windows 7のwampserverでこれをテストします

これを解決するにはどうすればよいですか?

4

2 に答える 2

2

mod_rewrite と .htaccess を有効にしてからhttpd.conf、このコードをディレクトリの.htaccess下に配置します。DOCUMENT_ROOT

Options +FollowSymLinks -MultiViews
RewriteEngine On

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+players/player\.php\?name=([^&\s]+) [NC]
RewriteRule ^ /Football-Players/%1? [R=301,L]

RewriteRule ^Football-Players/([^/]+)/?$ /players/player.php?name=$1 [L,QSA,NC]
于 2013-09-09T21:16:50.197 に答える
0

rewrite_module確認のために、wampserver で有効にしましたか? wampserver -> apache -> modules -> rewrite_module で有効にします

于 2013-09-09T21:14:59.670 に答える