2016-08-10 3 views
0

これはニッチな質問ですが、私のURLを書き直す際に問題があります。 /view.php?user=Alex0111から/ Alex0111を書き直そうとしています。また、私はビュー/ Alex0111はここ/ 5 私の.htaccessファイルの内容は、私がしましたhtacessを使用してphp urlを書き換えることができません

DirectoryIndex Home.php 

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^\.]+)$ $1.php [NC,L] 
RewriteRule ^view/([0-9A-Za-z]+) view.php?user=$1 [NC,L] #doesn't work causes internal error 

ているようにしたい/view.php?user=Alex0111 & ID = 5の第2のGET変数を持っていますこのコード行を次のチュートリアルに何度もチェックしましたが、私は何かに印がないです。マルクスは、コメントで述べたように、それはパスを書き換えますので、あなたの最初の書き換えルールが干渉します

RewriteRule ^view/(.+)/(.+) view.php?user=$1&id=$2 [NC,END,QSA] 

+0

私もまた、この質問をするあなたのための '1 +'で尋ねるの感謝を望む:) – StackB00m

+0

[PHPでURL書き換え]の可能な複製を(http://stackoverflow.com/questions/16388959/url-rewriting-with-php) – hjpotter92

+0

最初の 'RewriteRule'は 'view/Alex0111'を 'view/Alex0111.php'に書き換えませんか? –

答えて

2

はであなたの書き換えルールの両方を交換してください。

古いApacheバージョンを使用している場合は、[END]フラグがエラーになります。その場合、[L]

[QSA]フラグは、ユーザーが送信した追加のクエリパラメータをサーバーに追加するように指示します。例:閲覧/ Alex01/5? のparam =値

関連する問題