我使用CodeIgniter 3作爲Web平臺,並試圖將語義UI CSS導入到我的頁面中。我這樣做是通過在CSS導入的href屬性中使用CodeIgniter的base_url()
方法。Codeigniter呼應[:: 1]而不是本地主機
但是,semantic.css本身會導入一些其他字體,這些字體因爲跨源資源共享策略而無法加載。這是chrome給出的錯誤消息:
來自原始'http://[::1]
'的字體已被阻止被跨源資源共享策略加載:請求的資源上沒有'Access-Control-Allow-Origin'標頭。因此不允許訪問原產地'http://localhost'。
這是因爲base_url()回聲域是[::1]
而不是我輸入到瀏覽器中的localhost。
出於某種原因,在我看來,鉻(也是邊緣)不認爲[::1]
和localhost作爲同一主機,或者我只是愚蠢。我所知道的是,如果我將主semantic.css文件和硬代碼localhost的路徑更改爲它,它可以工作,而且它也可以工作,而不是使用本地主機請求我的頁面,我使用[::1]
I已經完成了與此非常相似的其他項目,並且從未出現過這個"[::1]"
。究竟是什麼導致PHP回聲這樣的路徑?
嗯,我意識到這一點,但我從來沒有填寫它,並且base_url總是正確解決,無論它是在本地主機還是其他域。 如果我填寫了這個值,我想我需要改變它,當我的項目從我的機器移動到其他服務器的權利? – Dalannar
其他一些服務器意味着? –
如果我搬到了說example.com,base_url仍然回聲localhost我設置? – Dalannar