【发布时间】:2018-09-14 10:02:41
【问题描述】:
CodeIgniter 新手,我的脚都湿了。
较旧的(5 岁?)CI 网站。将其移至 A2 的新虚拟主机并进行设置。
主页出现,但基本 URL 似乎不适用于该站点。我还没有更改 DNS,所以使用 FTP 上的 IP 和子文件夹。
应用程序/config/config.php
$config['base_url'] = 'http://xxx.xxx.xx.xxx/blah.com/';
也试过
$config['base_url'] = 'http://'.$_SERVER['SERVER_NAME'].'/blah.com/';
但是当网站加载时,css 在尝试加载时会丢失
<link href="/assets/css/global.css" rel="stylesheet" type="text/css" media="all" />
<link href="/assets/css/public.css" rel="stylesheet" type="text/css" media="all" />
等等
即使浏览器中的网址显示
http://xxx.xxx.xx.xxx/blah.com/
资产和东西正在尝试加载
这是我的 htaccess 文件。
# Deny access to the htaccess file
<FILES .htaccess>
order allow,deny
deny from all
</FILES>
# Prevent these script from executing anything
Options -ExecCGI
AddHandler cgi-script .pl .py .jsp .shtml .sh .asp .cgi
# Make it so sessions are available on all sub-domains
#php_value session.cookie_domain .prelicensetraining.com
# Prevent directory browsing
Options -Indexes
# Code Igniter Clean URL Rewrites
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
额外说明:最初在 A2 的新虚拟主机上遇到 500 内部服务器错误。打开票证并从支持人员那里收到以下信息。现在它正在连接到 db,但正如我上面提到的,基本 URL 设置无法正常工作。
“这是由于软件使用了旧的 mysql 扩展,PHP 7+ 不再支持该扩展。我们安装了 cPanel 的 MultiPHP 系统并将 blah.com 设置为使用 PHP 5.6,然后更新了应用程序/配置/数据库。 php 文件以使用 'localhost' 作为数据库主机,我们现在在http://xxx.xxx.xx.xx/blah.com/ 获得一个登录页面。"
【问题讨论】:
-
你贴的HTML代码,
base_url应该怎么用? -
不是。我只是想显示在错误的基本 URL 处加载资产的参考。谢谢。出于某种原因,config.php 中的基本 URL 设置忽略了 /blah.com/ 部分 URL。不知道为什么会这样。
-
我想你不明白
base_url在 CodeIgniter 中是如何使用的 -
也许不是。我试图理解。网站在旧的虚拟主机上运行良好。移动到新的,我更新了 application/config/config.php 中的设置,因为它之前显示了旧的 URL,现在它没有加载资产。谢谢。
-
感谢您的帮助。事实证明这是过时的 Code Igniter 框架的问题。经过一个长周末后,对代码进行了大修以使其保持最新状态,它现在可以与 baseURL 设置一起使用。谢谢!
标签: php .htaccess codeigniter base-url