【问题标题】:Codeigniter base url issue with www带有 www 的 Codeigniter 基本 url 问题
【发布时间】:2016-04-05 20:15:24
【问题描述】:

我已将基本 url 声明为 $config['base_url'] = 'http://example.com/';.

但问题是,如果有人尝试使用“http://www.example.com/”访问我的网站; , css/js 函数不工作。

如果我将基本 url 更改为 'http://www.example.com/' ,用户将无法使用 'http://example.com/' 访问。

我正在使用 codeigniter 3.0.3 。这是一个已经在线的网站的问题。

CSS - 资产/插件/bootstrap/css/bootstrap.min.css" />

JS->

。顺便说一句,ajax 请求也失败了。当我尝试访问 ajax 函数时,控制台上显示以下错误 -

XMLHttpRequest 无法加载 http://www.example.com/Dynamic/home/normal/4。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许访问 Origin 'http://example.com'。

css错误

来自“http://www.example.com”的字体已被跨域资源共享策略阻止加载:请求的资源上不存在“Access-Control-Allow-Origin”标头。 Origin 'http://example.com' 因此不允许访问。

【问题讨论】:

  • 解释你的代码更多添加css/js路径使用它不清楚
  • CSS - JS - 。顺便说一句,ajax 请求也失败了
  • 在问题中添加您的文件夹结构和评论,或者您可以查看页面的源代码它们显示是否正确??
  • 让你的基础 url() = www.example.com
  • 是的。网站运行正常,但如果我访问我的网站时没有“www”,则会发生这些错误

标签: php codeigniter routing base-url


【解决方案1】:

我认为以下代码块显示了在 Codeigniter 中配置 base_url 的最佳方法:

$config['base_url'] = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == "on") ? "https" : "http");
$config['base_url'] .= "://".$_SERVER['HTTP_HOST'];
$config['base_url'] .= str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']);

我坚信这会解决您的问题。谢谢你。

【讨论】:

    【解决方案2】:

    更改您的基本网址

    $config['base_url'] = 'http://example.com/';

    到

    $config['base_url'] = 'http://www.example.com/';

    原因:www 和非 www 的网站 url 被认为是不同的网站,所以它给出了错误

    跨域资源共享策略:无“Access-Control-Allow-Origin”

    更好的方法是在 htaccess 中添加代码来将非 www 转换为 www。

    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^www\. [NC]
    RewriteRule ^(.*)$ http://www\.%{HTTP_HOST}/$1 [L,R=301]
    

    希望这能解释变化的原因...

    【讨论】:

      【解决方案3】:

      这样定义baseUrl

      $config['base_url'] = 'stackoverflow.com/';
      

      而.htaccess 应该是

      RewriteEngine On
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule ^(.*)$ index.php/$1 [L]
      

      以及确保 URL 帮助程序已加载。

      【讨论】:

      • @HashKanchana 看看这个
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-25
      • 1970-01-01
      • 2016-02-18
      • 2013-09-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多