2016-07-17 4 views
0

ユーザーのユーザー名に基づいてURLを作成するにはどうすればよいですか?
誰かがコードと.htaccess設定を手伝ってくれますか?

users.com/usernamehere

あなたはGithub
上でそれを表示したい場合は、live websiteアカウントのユーザー名に基づいてURLを追加する方法

上でそれを表示したい場合は情報
私のユーザーが自分のページを表示したい場合、彼はつもり行くのです"users.com/hisusername"に変更してください。リンクはとなります。のユーザー名と彼のアカウントに関する情報が表示され、.htaccessには書き換えルールがありますか?誰かがコードを教えてくれますか?

提案
は、私はいくつかのチュートリアルではこれを見てきましたが、私はそれに従うことができないので、ページは「?username=usernamehere」のタグを持っている場合、ユーザーはつもり「usernamehere」ページにリダイレクトされます。
例:ユーザーは「users.com/profile.php?username=Stackoverflow」であり、ユーザーは「users.com/users/Stackoverflow」にリダイレクトされます。これが起こる可能性はありますか?おかげで、ユーザーがusers.com/profile.php?username=Stackoverflow上で良い一日:)

+0

あなたのQにはさらに詳しい情報が必要です。 「URL_1」を「URL_2」のように書き換えるために必要な '.htaccess'ルール、または「私のユーザーのページは' URL_1'にありますが、私はユーザーにアクセスしてほしい'URL_2';' .htaccess'でどうすればいいですか? " – BeetleJuice

+0

ありがとう、詳細情報を更新するつもりです:) – astroXoom

答えて

0

をしていると ユーザーがつもりにリダイレクトされます。users.com/users/Stackoverflow。どんな これが起こる可能性がありますか?

注:この見積もりは反対ですが、以下の回答では、ユーザーがURLバーにusers.com/users/Stackoverflowと入力することを前提としています。

場所は、ファイルが(通常はpublic_htmlwwwと呼ばれるウェブサイトのファイルが格納されている最高のディレクトリ、)あなたのウェブサイトのドキュメントルートNCフラグは比較大文字と小文字を区別しない可能

RewriteEngine on 
RewriteBase/

RedirectRule ^users/(.*) /profile.php?username=$1 [END,NC] 

次のルールを追加で.htaccessと呼ばれます。意味はusers/StackUSERS/Stackの両方がリダイレクトされます。大文字と小文字を区別したい場合は、削除してください。

ENDフラグは、リダイレクトルールの検索を停止するようにサーバーに指示します。基本的には、/profile.php?username=...がその要求の最終宛先になるようにします。

補遺

をあなたが本当に反対方向に顧客をリダイレクトしたい場合は、代わりにこのルールを使用

RedirectRule ^profile.php?.*username=([^&$]+) /users/$1 [END,NC] 

パス/users/nameは、実際のファイルでない場合、これはおそらくかかわらず、あなたの問題が発生します

+0

ENDタグは何をしますか? – astroXoom

+0

私の更新を参照してください:-)。また、あなたの具体例には当てはまらないのでここでは使用しませんでしたが、あなたのスクリプトが '$ _GET'パラメータに依存している場合は' QSA'タグを追加します。 'QSA'フラグは、すべてのクエリ文字列の引数を最終的なスクリプトに渡すようにサーバに指示します。例えば、' users/joe?name = value'は 'profile.php?username = joe&name = value'になります。 'QSA'フラグがなければ、問い合わせ引数は破棄されます – BeetleJuice

+0

ああ、ありがとう:)私はたった13歳です。ここでPHPプログラミングを始めます。申し訳ありません。私のウェブサイトは応答していません)。 – astroXoom

関連する問題