2012-01-22 6 views
0

私には何か簡単な問題がありますが、私はhtaccessを初めて使っていて解決策を見つけることができません。htaccessを書き直すと、最後に/を追加するとURLが機能しなくなる

私は次のURLを入力すると

RewriteRule ^page1/([a-zA-Z0-9_-]+)/$ page1.php?name=$1 
RewriteRule ^page1/([a-zA-Z0-9_-]+)$ page1.php?name=$1 

が、それは問題

www.myexample.com/page1/variable 

せずに動作します(ルートマップ)私のhtaccessファイルに次の行を持っている奇妙なことが起きたときにI最後に/を追加してください。その後、ページはGET値をURLから取得できません。

あなたの時間と助けてくれてありがとう!

+0

.htaccessに他のルールがありますか? –

+0

それは問題でしたが、今はそれを修正しました。新しいものがあります。私はルールマットを使用したいと思います: RewriteRule^page1 /(.*)$ page1.php?url = $ 1 ただし、最初の "page1"はありません。 RewriteRule ^(。*)$ page1.php?url = $ 1 問題は、myexample.comまたはexmaple.com/contact.phpと入力したときにpage1.phpも読み込まれ、/ variable /のようなものがロードされている場合のみです。 – Jab

答えて

0

は、最初のルール

RewriteRule ^page1/([a-zA-Z0-9_-]+) page1.php?name=$1 

それとも、「/」でより多くのデータを取り込み保持したい場合は、最終的にデータ

RewriteRule ^page1/([a-zA-Z0-9_-]+)/(.*)$ page1.php?name=$1 

をキャプチャするために続けることができるのエンディング/ $記号を取り除きますデリミタとして、私は行うことをお勧めします。

RewriteRule ^page1/(.*)$ page1.php?url=$1 

次に、何をすべきかを決定するためにサーバーサイドスクリプトを使用します。

+0

あなたの最後の提案で、あなたは$ _SERVER ["REQUEST_URI"]を使ってURLの終わりを取得しなければならないということを意味しましたか? $ _GET ["url"]の代わりに? – Jab

関連する問題