2012-10-18 21 views
0

我試圖搜索這個,但由於搜索條件,我無法在任何地方找到答案,哈哈。site.com./ vs site.com/訪問者跟蹤程序的問題。重寫代碼?

我的訪問者跟蹤網站(我使用Piwik)無法破解以下問題。

site.com./ VS site.com/

Site.com./時類型找到一個網站,當然是錯誤的IMO,不知何故其他人找到我的網站和每一個他們訪問的頁面顯示爲外部鏈接和這個./問題。

我該如何在.htaccess(在我的域的根目錄)添加一條規則來解決這個問題,以及可能與此類似的其他問題......現在,這顯然是一個問題。

謝謝大家!

+0

不知道是什麼問題。這兩種方法都是有效的(我不認爲你可以在.htaccess中區分它們),但是你在現實生活中是否會遇到'site.com.'? –

回答

0

嘗試使用HTTP_HOST變量,如下所示可能工作。

RewriteEngine on 
Rewritecond %{HTTP_HOST} ^www\.site\.com\. 
RewriteRule (.*) http://www.site.com/$1 [R=301,L] 
+0

沒有工作羅伯特。除非我做錯了,否則任何人都有想法? –

+0

很抱歉聽到這些。你可以用PWiki做的一件事是修改PHP輸入代碼來動態地重寫主機名,或者根據數據庫方案,你可以在數據庫中替換它(儘管這可能更成問題)。 – Robert

+0

聽起來很複雜,我認爲有一個重寫的Apache;也許這裏有人可以解決? –

1

這是不是一件從htaccess的可以解決的,因爲site.com.主機名是無效的和任何請求不會到達服務器。沒有辦法重寫從瀏覽器到piwik的傳出請求,因爲這些請求與您的服務器無關,因此任何htaccess都不適用。

你需要弄清楚爲什麼瀏覽器發送跟蹤信息到piwik與主機名爲site.com.。就像一個狂野的未受過教育的猜測一樣,它可能與主機名稱的一些不雅的附加操作有關,並且與<a href="./my/page.html">形成嚴重相關的URI。所以當代碼無意識地將它們附加在一起時,你會得到site.com./my/page.html

+0

你說過「因爲site.com。主機名是無效的,任何請求都不會到達你的服務器。」 但人們正在瀏覽我的網站,頁面正在以這種方式拉起:http://site.com./color.html,然後轉到http://site.com./state.html。我會認爲.htaccess會有辦法解決這個問題。 –

+0

@ Trance-Man htaccess無法控制瀏覽器獲取的實際內容。它只能做「像這個頁面而不是這個頁面,你會得到另一個」。你必須瀏覽你的內容並刪除'.' –

相關問題