2012-05-22 47 views
1

我有以下網站啓動並運行:www.posti.sh該網站實際上是www.myskoob.com/postish/,但我使用域名轉發,以便當用戶輸入www.posti.sh保持這種狀態,不會更改爲www.myskoob.com/postish/。你可以試試這個網站。它通常是發佈內容並使用jQuery ajax讓用戶進行發佈。隨意測試它。URL隱藏似乎危及網站功能

這裏的問題:

在訪問www.myskoob.com/postish/,發佈工作正常 - 所有的Ajax調用似乎工作。但是,當我訪問www.posti.sh時,它不起作用,雖然它訪問相同的文件 - 我不明白爲什麼。

轉發有兩種方式 - 一種是幀轉發(然後工作),另一種是URL隱藏,這是一種更清潔的方式,因爲URL實際上隨打開的不同頁面而變化。

有人知道URL隱藏不起作用的原因嗎?我試圖迴應一些由ajax調用的php文件,並且它不返回任何內容,所以問題似乎是ajax無法連接到該文件。

謝謝你的幫助!

丹尼斯

更新1

請參閱AJAX代碼在這裏:

//Post 
    $.ajax({ 
     type: 'POST', 
     url: 'action/post.php', 
     data: 'posttext='+posttext+'&imageurl='+imageurl+'&randomcode='+randomcode, 
     success: function(post){ 
      //Do something here 
     } 
    }).error(function(){ 
     //Say it could not post 
     alert('The post could not be sent - please try again later.'); 
    }); 
+0

在'$阿賈克斯('添加一個'錯誤:功能(jqXHR,textStatus,errorThrown){//登錄textStatus&errorThrown}'瞭解更多詳情 –

+0

@ ErikPhilips我添加了「error:function(jqXHR,textStatus,errorThrown){alert(jqXHR +''+ textStatus +''+ errorThrown);},」但是它沒有提醒任何東西,另外,ajax結尾的.error – weltschmerz

回答

0

是域硬編碼到你的Ajax請求?由於您在網頁瀏覽器中使用same origin policy,因此無法向其他網域發送典型的Ajax請求。

解決方法之一是不要在ajax邏輯中對域進行硬編碼,只需使用相對路徑即可。即:

代替$.load('http://mydomain.com/search/results.json');使用$.load('/search/results.json');

+0

我只使用相對路徑,但是謝謝你,我想也許我需要在myskoob的服務器上配置一些東西嗎? – weltschmerz

+0

@Dennis我不能提出任何其他的理論,因爲你沒有任何代碼您的問題 – Dunhamzzz

+0

請參閱問題編輯。 – weltschmerz