2011-07-05 55 views
1

使用最新的1.x(1.7.3)版本的CodeIgniter,我從Google Adwords獲得了gclid上的404錯誤。我的理解是,這是因爲「?」在Google Adwords添加的網址中。我在網上閱讀了大量答案,包括這裏,但我找不到具體的答案。Codeigniter 404谷歌Adwords錯誤?gclid =

最常見的是編輯配置文件:

$config['uri_protocol'] = "PATH_INFO"; 
$config['enable_query_strings'] = FALSE; 

這解決了GCLID問題,但殺了我所有的其他環節。換句話說,鏈接如myDomain.com/something/here/there將不再起作用。

我也見過說編輯.htaccess的解決方案,但大多數似乎是通過重定向禁用谷歌適當跟蹤的解決方法。

所以我的問題是:什麼是允許gclid經過,以及爲什麼這是一個好方法?

+2

「使用笨的最新** ** 1.x的版本.. 。「這可能是一個問題,因爲最新進入** 2.x ** – jondavidjohn

+0

我相信它有可能在1.x中解決這個問題。這不僅僅是一個新問題...... –

+0

只是指出了你提出問題的方式中的衝突,保持軟件更新永遠不是一個壞主意。 – jondavidjohn

回答

3

使用實際最新版本笨的,請嘗試使用...

$config['allow_get_array'] = TRUE; 
$config['uri_protocol'] = "AUTO"; 

這是默認的最新版本,而不是...

$config['uri_protocol'] = "PATH_INFO"; 
$config['enable_query_strings'] = TRUE; 

從而改變你的url結構來完全使用querystrings而不是基於網段的url,這就是爲什麼你的其他url正在破壞。

升級信息

What's different in Codeigniter 2? (the highlights)

How to upgrade to Codeigniter 2

+0

感謝您的信息,不幸的是,這實際上並沒有幫助或回答問題,因爲這些設置在1.7.3中不可用。 –

+0

看到第一行...「使用最新版本的codeigniter,嘗試使用...」 – jondavidjohn

+0

使用最新的1.x版本,而不是最新版本;) –

0

這奏效了,我

$config['uri_protocol'] = "PATH_INFO";