Проект Codeigniter - пытается просмотреть страницу индекса (главную страницу в приложении) с помощью XAMPP - PullRequest
0 голосов
/ 01 июня 2019

В XAMPP и моей текущей настройке я могу просто набрать https://www.localhost:1234/testsite,, и она автоматически загрузит страницу index.php на тестовой площадке каталога и отобразит ее на экране.

С codeigniter я понимаю, что маршрутизация является более сложной, и я не знаю, что делать, как полный новичок, чтобы просмотреть главную страницу индекса.

Индексная страница, которую я хочу стать домашней (т.е. загружаемой при наборе в https://www.localhost:1234/public_html), находится в C: \ xampp \ htdocs \ public_html \ application \ views \ home \ index.php

Может кто-нибудь предложить, что мне нужно сделать, чтобы это работало?

Я пробовал это: https://www.localhost:1234/public_html/application/views/home .но это не работает

Файл .htaccess, и да, это полноценный размещенный сайт, как показано ниже: Что мне нужно изменить здесь, или я могу удалить его для работы на localhost?

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/[0-9a-zA-Z_-]+$
RewriteCond %{REQUEST_URI} !^/\.well-known/cpanel-dcv/[0-9a-zA-Z_-]+$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

# force ssl
RewriteCond     %{SERVER_PORT} ^80$
RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/[0-9a-zA-Z_-]+$
RewriteCond %{REQUEST_URI} !^/\.well-known/cpanel-dcv/[0-9a-zA-Z_-]+$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule     ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

Что мне нужно ввести в URL-адресе или изменить в файле .htaccess или где-то еще, чтобы просто загрузить индексный файл, как показано выше?

Я предполагаю, что нужно внести изменения в эти две строки, но я не уверен, что?

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

изменится ли https: ///www.%HTTP_HOST} на localhost: 1234?

Также мне известен формат, описанный на сайте codeigniter:

https://www.localhost:1234/public_html/home/index/index.php

тоже не работает,

где home - контроллер (в приложении), а index - функция, см. Ниже:

class Home extends CI_Controller {

    public function __construct()
    {
        parent::__construct();
        $this->load->model('homes');

    }

    public function index()
    {
        //$key = $config['encryption_key'];
        $this->load->view('template/header.php');
        $this->load->view('home/index.php');
        $this->load->view('template/footer.php');
    }

Я также попробовал localhost: 1234 / index.php / home / index, как это предлагается ниже, но безрезультатно.

1 Ответ

0 голосов
/ 01 июня 2019

Исходя из вашего .htaccess, я предполагаю, что это полностью разработанный сайт, а не просто пустая установка CodeIgniter. Поэтому большинство ваших правил .htaccess ссылаются на удаленный или действующий сайт.

Я не могу говорить о вашей текущей настройке, но в основном по умолчанию без .htaccess CI работает следующим образом.

Если у вас есть контроллер в application/controllers/ с именем Test.php и подфункция с именем some_method, тогда URL будет localhost/index.php/test/some_method

По умолчанию CodeIgniter устанавливает индекс в localhost/index.php или localhost/index.php/index. Контроллер приветствия, который вы видите в установке по умолчанию, на самом деле ссылается на controllers/welcome, но, хотя вы можете получить к нему доступ через localhost/index.php/welcome, вы также можете получить к нему доступ через localhost/index.php, и именно здесь в игру вступают контроллеры маршрутов / по умолчанию. Подробное объяснение маршрутов находится за пределами стека, но вы можете найти больше информации здесь: https://www.codeigniter.com/user_guide/general/routing.html

Будучи новичком в CI, я могу сказать, что документация довольно хорошая, и вы должны не торопиться, чтобы понять архитектуру, прежде чем идти вперед.


Если вы хотите удалить index.php и просто посмотреть localhost/test/some_method, вам нужны некоторые правила .htaccess https://www.codeigniter.com/userguide3/general/urls.html#removing-the-index-php-file

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...