2017-02-07 20 views
0

ローカルのMAMPサーバー上で静的なHTMLファイルを実行していて、URLパス形式でページ(user.html)にIDを渡したいとします。ここで私はそれが見えるように必要なものです:HTML URLパス書き換え

http://localhost:8888/mysite/user/3245653/john

  • ユーザーは、HTMLページです。私は、ユーザーが/ IDパラメータである後
  • 数を.htaccessのルール
  • を使用してURLから.html拡張子を削除したジョンは、私がこれは何をされているURLへ

を追加する必要が別のパラメータであります私の.htaccessファイルは次のようになります。

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.html -f 
RewriteRule ^(.*)$ $1.html 

現在、URLは次のようになります。

http://localhost:8888/mysite/user

だから私は、?id=を使用してクエリ文字列などのパラメータを送ることができますが、私はパス形式

私はそのURLのフォーマットを作成するようにする必要があり変更は何ですかを使用する必要がありますか?

+0

Downvoter説明し、なぜあなたはそれを閉じるために投票しましたか? – Dinuka

+0

firebase-hostingでこれをタグ付けした特別な理由はありますか?それは関係ないようですので、タグを削除します。 –

答えて

1

あなたのページへの追加パラメータを渡すために新しい書き換えルールを追加する必要があります。

RewriteEngine on 

RewriteCond %{REQUEST_FILENAME} -d 
RewriteCond %{REQUEST_FILENAME} -f 
RewriteRule^- [L] 

RewriteCond %{REQUEST_FILENAME}\.html -f 
RewriteRule ^([^/]+)/?$ $1.html [L] 

RewriteRule ^([\w-]+)/([\w-]+)/([\w-]+)/?$ $1.html?id=$1&name=$3 [L,QSA] 

RewriteRule ^([\w-]+)/([\w-]+)/?$ $1.html?id=$1 [L,QSA] 
+0

これでCSSが正しく読み込まれません。私はCSSのパスを変更する必要がありますか? – Dinuka

+0

また、ユーザーページで 'users/234/john'を使用したいが、製品ページで' products/24342'フォーマットを使用したいのですが?基本的に商品ページには、1つのパラメータと2つのパラメータがユーザーページの – Dinuka

+0

にあります。したがって、2つの異なるURLフォーマットの2ページです。 – Dinuka