Подтвердить что ты не робот

Как установить правильный код базы данных codeigniter?

когда у меня был сайт на среде разработки - это был URL: testurl.com

Теперь на рабочем сервере мой адрес приложения codeigniter должен быть someurl.com/mysite/

Я переместил его туда, и каждый раз, когда я пытаюсь запустить какую-то функцию, например /home/test - он меня вставляет someurl.com/home/test - что НЕПРАВИЛЬНО.

Он должен быть someurl.com/mysite/home/test - как это исправить? Я установил

$config['base_url'] = someurl.com/mysite/
4b9b3361

Ответ 1

Базовый URL должен быть абсолютным, включая протокол:

$config['base_url'] = "http://somesite.com/somedir/";

Если используется хелпер URL, то base_url() выведет указанную выше строку.

Передача аргументов в base_url() или site_url() приведет к следующему (предполагается $config['index_page'] = "index.php";:

echo base_url('assets/stylesheet.css'); // http://somesite.com/somedir/assets/stylesheet.css
echo site_url('mycontroller/mymethod'); // http://somesite.com/somedir/index.php/mycontroller/mymethod

Ответ 2

Проверьте

config > config

Структура файла codeigniter

заменить

$config['base_url'] = "your Website url";

с

$config['base_url']  =  "http://".$_SERVER['HTTP_HOST'];

$config['base_url'] .= preg_replace('@/[email protected]', '', dirname($_SERVER['SCRIPT_NAME'])).'/';

Ответ 3

Ну, это очень интересно, вот быстрый и рабочий код:

index.php

/**
 * Define APP_URL Dynamically
 * Write this at the bottom of index.php
 *
 * Automatic base url
 */
define('APP_URL', ($_SERVER['SERVER_PORT'] == 443 ? 'https' : 'http') . "://{$_SERVER['SERVER_NAME']}".str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME'])); 

config.php

/*
|--------------------------------------------------------------------------
| Base Site URL
|--------------------------------------------------------------------------
|
| URL to your CodeIgniter root. Typically this will be your base URL,
| WITH a trailing slash:
|
|   http://example.com/
|
| If this is not set then CodeIgniter will guess the protocol, domain and
| path to your installation.
|
*/
$config['base_url'] = APP_URL;

CodeIgniter ROCKS!!!:)

Ответ 4

Если вы оставите его пустым, структура попытается autodetect с версии 2.0.0.

Но не в 3.0.0, см. здесь: config.php

Ответ 5

После объявления базового url в config.php(обратите внимание, что если вы все еще получаете ту же ошибку, проверьте autoload.php)

$config['base_url'] = "http://somesite.com/somedir/";

Проверьте "автозагрузка"

Структура файла CodeIgniter:

\application\config\autoload.php

И включите автозагрузку:

$autoload['helper'] = array(**'url',** 'file');

И он работает.

Ответ 6

это для сервера и моего сайта, который я применяю в hostinger.com, и его отлично работает

1st: $config['base_url'] = 'http://yoursitename.com'; (в confing.php)

2): src="<?=base_url()?>assest/js/wow.min.js" (в файле вида)

3): href="<?php echo base_url()?>index.php/Mycontroller/Method" (для ссылки на URL или вызов метода)

Ответ 7

Я думаю, что CodeIgniter 3 рекомендует установить $config['base_url'] на полный URL-адрес вручную, чтобы избежать вставки заголовка HTTP.

Если вас это не беспокоит, вы можете просто добавить следующие строки в свой

application/config/config.php

defined('BASE_URL') OR define('BASE_URL', (is_https() ? 'https://' : 'http://') . $_SERVER['HTTP_HOST'] . dirname($_SERVER['SCRIPT_NAME']) . '/');
$config['base_url'] = BASE_URL;

Таким образом, у вас также есть постоянная BASE_URL доступная во всем коде проекта (включая представления), и вам не нужно использовать функции:

config_item('base_url') //returns BASE_URL
$this->config->item('base_url'); //returns BASE_URL

Ответ 8

Вы можете использовать базовый путь по умолчанию для любого сервера, который должен использоваться в папке config> файлы config.php, заменяют вас:

$config['base_url'] = 'index.php';

по этому коду: $config['base_url'] = "http://".$_SERVER['HTTP_HOST']; $config['base_url'].= preg_replace('@/[email protected]','',dirname($_SERVER['SCRIPT_NAME'])).'/'; $config['base_url'] = "http://".$_SERVER['HTTP_HOST']; $config['base_url'].= preg_replace('@/[email protected]','',dirname($_SERVER['SCRIPT_NAME'])).'/';

он автоматически обнаружил вашу папку на любом сервере

Ответ 9

application > config > config.php

найдите $config ['base_url'] и разместите свой сайт как "//example.com" (пропустить протокол)

 $config['base_url'] = "//someurl.com/";

Это работает для меня.

Ответ 10

Вы пропускаете двойные кавычки?

$config ['base_url'] = "someurl.com/mysite"

Ответ 11

Динамический базовый url (codeigniter)

Просто перепишите строку в config/config.php со следующим:

$config ['base_url'] = 'http://'.$_SERVER [' HTTP_HOST '].'/';

Ответ 12

$config['base_url'] = "http://".$_SERVER['SERVER_NAME']."/project_name/";

таким образом вы конфигурируете base_url, а затем не будете беспокоиться о хостинге. оба работают на локальном хосте и сервере.

Ответ 13

Base url set in CodeIgniter for all url

$config['base_url'] = "http://".$_SERVER['HTTP_HOST']."/";

Ответ 14

Измените config.php следующим образом.

$ark_root  = "http://".$_SERVER['HTTP_HOST'];
$ark_root .= str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']);
$config['base_url'] = $ark_root;

Ответ 15

Базовый URL должен быть абсолютным, включая протокол:

$config['base_url'] = "http://".$_SERVER['SERVER_NAME']."/mysite/";

Эта конфигурация будет работать как на локальном хосте, так и на сервере.

Не забудьте включить автозагрузку:

$autoload['helper'] = array('url','file');

Тогда base_url() будет выводиться как ниже

echo base_url('assets/style.css'); //http://yoursite.com/mysite/assets/style.css

Ответ 16

Попытайтесь добавить контроллер на свою индексную страницу. Просто посмотрел на аналогичную структуру на одном из моих собственных сайтов, и у меня был базовый url-набор, равный = "somedomain.com/v2/controller"