CodeIgniter中的base_url()和403错误

时间:2015-03-05 15:36:20

标签: php css .htaccess codeigniter http-status-code-403

在HTML视图中,css链接代码如下所示:

<link href='www.jedendzien.pl/assets/css/style.css' rel='stylesheet'>

但我的浏览器显示地址为双域地址

  

www.jedendzien.pl/www.jedendzien.pl/assets/css/style.css

所以我得到403错误。我通过

创建链接
<link href='<?php echo base_url(); ?>assets/css/style.css' rel='stylesheet'>

并在config.php中设置:

$config['base_url'] = 'www.jedendzien.pl/';

在我的XAMPP服务中,everthing工作正常但问题只出现在托管服务器上。

如果我更改$config['base_url'] = '',那么地址看起来就可以了,但我仍然遇到403错误的问题。

我的.htaccess in root:

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

4 个答案:

答案 0 :(得分:1)

将assets / css / style.css的权限更改为644

更改基本网址如下

$config['base_url'] = 'http://www.jedendzien.pl/';

或者如果你有一个安全的网址,那么

$config['base_url'] = 'https://www.jedendzien.pl/';

将.htaccess更改为

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

答案 1 :(得分:0)

对于绝对网址,您应该包含协议,它可能是相对的:

<link href='//www.jedendzien.pl/assets/css/style.css' rel='stylesheet'>

答案 2 :(得分:0)

试试这个.htacces内容:

RewriteEngine on
RewriteCond $1 !^(index\.php|assets)
RewriteRule ^(.*)$ /index.php/$1 [L]

答案 3 :(得分:0)

只需清空base_url();在config.php文件中。 并从www.codeigniter.com复制codeigniter 3的.htaccess文件中的.htaccess文本。