如何使它成爲只有JS和PHP文件在同一臺服務器上才能執行ajax請求?如果javascript調用與PHP文件在同一服務器上,我該如何才允許ajax請求?
回答
答案是,你不能。
你可以做的最好的事情就是搭建一個容易解決的障礙。所以如果你只是這樣做阻止其他人直接訪問你的AJAX API而不通過你的Javascript,那麼這可能就足夠了,例如檢查HTTP_X_REQUESTED_WITH
服務器變量。但這很容易解決。
如果你是爲了安全起見,簡單的答案是這是不可能的。
在設計內部AJAX API時,您必須簡單地記住您的Javascript可以請求的任何內容,外部客戶端(例如機器人)也可以請求。因此,請勿泄露您不希望其他人能夠看到的任何信息,或者允許請求執行任何您不希望其他人能夠執行的操作。
如果只需要爲經過身份驗證的用戶提供訪問權限,那麼您需要爲您的AJAX API應用與您的網站其他部分相同的身份驗證,因爲它可以輕鬆地由第三方請求您的網站的其餘部分。
如何在.htacces中限制它? – 2015-08-02 11:46:49
@SvenB不,你不能在服務器級別做任何事情。 想想這樣:你允許世界上的任何人訪問你的API並給他們代碼(你的網站和它的Javascript)來做到這一點。您無法控制是否修改此代碼或以任何方式發出直接請求,這些請求均來自其機器。你無法區分。你可以做的最多的事情就是混淆 - 讓他們很難理解你的代碼是如何做的 - 但是這樣做的好處是有限的,開發者工具仍然可以讓他們很容易地看到它是如何發生的。 – thomasrutter 2015-08-03 00:56:20
- 1. 如何在Nginx服務器上允許PUT文件請求?
- 2. IIS7停止服務文件的請求,但允許ajax回調
- 3. 如何僅允許從服務器上的文件調用PHP腳本?
- 4. 我如何發送請求到php xml_rpc服務器使用ajax
- 5. mvc web api只允許來自同一服務器的請求
- 6. 如何允許用戶從php服務器下載文件
- 7. 如何使用Netbeans在服務器端調試Ajax請求?
- 8. 如何檢測ajax請求上的php服務器超時
- 9. 如何允許在wamp服務器上傳dll文件
- 10. 405方法不允許服務器中的Ajax請求錯誤
- 11. 是一個API RESTful,如果它允許永久請求(服務器推送)
- 12. AJAX調用應該在服務器上?
- 13. 如何在請求的服務器上保護我的php文件
- 14. WAMP服務器不允許上傳文件(PHP應用程序)
- 15. 如何允許https訪問服務器上的文件
- 16. 如何允許寫入服務器上的文件ASP.net
- 17. 如何允許下載HTML服務器上的文件?
- 18. 如何使用http請求和JavaScript將文件保存在http服務器上?
- 19. 使用PHP在Lighttpd Web服務器上檢測ajax請求
- 20. 如何製作JavaScript服務器請求
- 21. 允許cors jQuery POST請求到Express.js服務器上的Spotify API
- 22. 如何在Rails服務器上顯示靜態文件請求
- 23. 允許Glassfish和PHP在同一臺服務器上一起使用Apache
- 24. 向同一節點上的Jetty服務器發送Ajax請求
- 25. 如何使用JavaScript從不同的服務器URL請求
- 26. Validiate PHP如果請求是從我的服務器
- 27. 只允許通過本地服務器上的ajax訪問PHP文件
- 28. Ajax調用服務器PHP只有時打印回請求
- 29. WCF服務如果從諸如「不允許的方法」之類的瀏覽器調用,Post請求會出錯。
- 30. ajax。如何從請求的html文件調用javascript代碼
你想要做什麼? – Sarfraz 2010-08-21 21:23:14
這個問題沒有道理。 Javascript是在客戶端,因此它不能與PHP文件在同一臺服務器上(除非客戶端碰巧是*服務器) – NullUserException 2010-08-21 21:24:19
請仔細閱讀,不可能做一個ajax後調用跨域作爲默認 - 但想要絕對確定這是不可能的。 – Splynx 2010-08-21 21:26:09