2016-07-30 7 views
6

これは、私がこの基本的なhtaccessの書き換えを長時間から作業するのを手伝っていたが、できなかったことに私は本当にイライラしています。基本的なhtaccessコードが動作しない

私は以下を試しました。

Options +FollowSymlinks 
RewriteEngine On 
RewriteBase /funshoppie/ 

############ Details page ################ 
RewriteCond %{THE_REQUEST} Deal\-details\.php\?title\=([A-Za-z0-9-]+)&id=(\d+) [NC] 
RewriteRule ^%1%2? [R=301,L,NE] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^Deals/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/?$ Deal-details.php?title=$1&id=$2 [NC,QSA,L] 

誰でも何が間違っているのか教えていただけますか?私は私がエラーログをチェックして成功

http://localhost/funshoppie/Deals/Styling-Tools-20%-off/7 

後に希望するものを

http://localhost/funshoppie/Deal-details.php?title=Styling%20Tools%20-%2020%%20off&id=7 

を書き換えしようとしています

urlは、HTTPCONF &は、コメントを外しrewrite_moduleを確保しました。このエラーの原因を知りません。

+0

実際に何をしようとしていますか? URLを書き換えますか?書き換えようとしているURLを指定できますか? – Lag

+0

@thickguru - 謝罪、私は現在のURLを言及するのを忘れました。 –

+0

私はここで答えを得ることができると信じています。これはまだ私の謎です。 –

答えて

5

私はあなたの正規表現は、URLをフィットされていない、現時点ではこれを試すことはできませんが?

ディール-details.phpタイトル=スタイリング%20Tools%20-%2020 %% 20off & ID = 7

エンに基づいており、これは以下の2つの文字列とすることができる復号:

  • ディール-details.php表題=スタイリング%20Tools%20-%2020 %% 20off 01 ?ID = 7
  • ディール-details.phpタイトル=スタイリングツール - 例なしで& ID = 7

オフ20%が自分の表現にマッチ:

[ ?..] ディール-details.php \タイトル\ =([A-ZA-Z0-9 - ] +)& ID =(\ D +) [..]

あなたが好きなあなたの表現から表現文字が欠落している:これは、いずれにもマッチします

Deal\-details\.php\?title\=(.+)&id=(\d+) 

:次の式を試してみてください

  • "%"
  • ""(スペース)

タイトル以降の文字。さもなければ私はそこに問題を見ない。

-1

最後に私はそれを自分自身で考え出しました。

最後の書き換えルールには、意図していなかったためにスラッシュの問題がありました。さらに、いくつかのクリーンURL機能&を使って、既存のすべての既存の& URLをURLに書き換えました。その後、それは働いた!

RewriteCond %{THE_REQUEST} Deal\-details\.php\?title\=([A-Za-z0-9-_]+)&id\=(\d+) [NC] 
RewriteRule^%1/%2? [R=301,L,NE] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([A-Za-z0-9-_]+)/(\d+)$ Deal-details.php?title=$1&id=$2 [NC,QSA,L] 

これは私に役立ちました。

関連する問題