我的问题不集中在如何在任何php框架中设置基本url的方法。我实际上真正想知道的是base_url()应该是什么从下面的两个选项中
假设我选择选项1,即[[http://example.com来自[http://www.example.com到我网站的所有访问量都会面临以下问题,如果我选择选项2来自其他otpion的网址的访问将在下面遇到问题。
Ajax由于CORS(跨源请求共享)而被浏览器阻止。因为Google将www和non www请求视为来自两个不同网站的请求。我的ajax代码在下面,如果有帮助的话
$.ajax({
url: '<?php echo base_url(); ?>/Index/perform_task',
type:'POST',
data: {
name: $("#name_field").val(),
task: $("#task_field").val(),
},
success:function(data){
if (data == 'task_completed'){
window.location.href = "<?php echo base_url() ?>";
}
else{
$('#task_error').html('Some Error occured.')
}
}
});
任何版本都有好处吗?]
简短的答案是没有。 www或非www网站没有任何优势,因为要选择一个网站还是另一个网站取决于个人喜好。影响SEO的主要因素是您的一致性,特别是您是否一直在网站的网址中添加或删除www。为了从这一小事情中受益,您需要选择一个选项并坚持使用该选项。简而言之,当您将网站的网址介绍给知名的搜索引擎后,请勿更改它。
否则,他们会将两个选项(www.site.com和site.com)都视为两个不同的网站,并禁止它们将页面,关键字和内容加倍。
www和非www站点URL之间的唯一区别只是技术上的区别。当您的网站包含“ www。”时,它是在使用其他域时调整为DNS并限制Cookie的主机名。同时,如果您的网站没有“ www。”,那么它就没有这样的技术特权
那么你应该怎么办?只需根据需要使用一个版本,并将所有来自其他版本的请求路由到您使用的版本,再也不会更改它。
正如@junkfoodjunkie所说,您只能使用一个域,并重定向另一个域。但是,如果由于某种原因必须保留这两个域,则应在当前域内调用ajax脚本。