2012-03-13 14 views
0

私はModxと呼ばれるCMSにパッケージ化されたかなり標準のmod_rewriteを持っています。mod_rewrite追加のクエリ文字列 - 正しい構文

それは以下のように設定している

を書き換えます。 * page_idの* &のcompany_id = *

  • http://www.domain.com/dev/company/*のcompany_id *
  • http://www.domain.com/dev/index.php?q=へ:

    # Friendly URLs Part 
    RewriteEngine On 
    RewriteBase/
    RewriteCond %{HTTP_HOST} . 
    # Force all pages to go to www.domain.co.uk for SEO 
    RewriteCond %{HTTP_HOST} !^www\.domain\.co.uk [NC] 
    RewriteRule (.*) http://www.domain.co.uk/dev/$1 [R=301,L] 
    # Friendly URLs 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ dev/index.php?q=$1 [L,QSA] 
    

    は、今私は、追加のクエリ文字列を書き換えます条件を追加したいですcompany_id *

注* company_id *と* company_id *は、実際の書き換えの数値である必要があります。

多くの繰り返しを試しましたが、それでも成功することはできません。

ヘルプありがとう!

答えて

1
# Friendly URLs Part 
RewriteEngine On 
RewriteBase/
RewriteCond %{HTTP_HOST} . 

# Force all pages to go to www.domain.co.uk for SEO 
RewriteCond %{HTTP_HOST} !^www\.domain\.co.uk [NC] 
RewriteRule (.*) http://www.domain.co.uk/dev/$1 [R=301,L] 
#are your sure the above rule shouldn't be : 
#RewriteRule (.*) http://www.domain.co.uk/$1 [R=301,L] 

# Friendly URLs 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^/]+)$ dev/index.php?q=$1 [L,QSA] 

#company url 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(company)/([^/]+)$ dev/index.php?q=$1&companyid=$2 [L,QSA] 
+0

Gerben - 答えてくれてありがとうございます。残念ながら、まだ動作しません。あなたのコードをコピーしましたが、PHP経由でサーバー変数を調べると、 "REDIRECT_QUERY_STRING = q = company/*** id_here ***"が返されます。これは最終的な "/ *** id_here ** * "は&companyid = *** id_here ***となります。*** id_here ***は実際の整数IDです。明らかにどんな提案もあります! – megaSteve4

+0

REDIRECT_QUERY_STRINGには元のURLが含まれています。 '$ _GET ['companyid']'はidを含むべきです。 – Gerben

+0

あなたの助けをGerbenありがとう。 $ _GET ['companyid']を使用しても機能しませんでした。私は 'Friendly URL'ブロックの上に 'company URL'ブロックを移動しましたが、現在は動作しますが、domain.com/domain// dev/company/1 - 私はそれが最後のクエリ文字列が再表示される理由である両方のルールを起動すると思いますが、[L]を使用して最後のルール実行 - 任意のアイデアを実行すると考えましたか?ありがとう – megaSteve4

関連する問題