Посмотрел пару вопросов по этой теме, и все они, похоже, связаны с .htaccess - я вставил свой ниже.
.htaccess (хранится в корневой веб-папке над приложениями):
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond $1 !^(index\.php|assets|images|js|css|uploads|favicon.png)
RewriteCond %(REQUEST_FILENAME) !-f
RewriteCond %(REQUEST_FILENAME) !-d
RewriteRule ^(.*)$ ./index.php/$1 [L]
</IfModule>
Конфигурация CodeIgniter:
$config['base_url'] = 'https://'.$_SERVER['HTTP_HOST'].'/';
$config['index_page'] = 'index.php';
$config['uri_protocol'] = 'REQUEST_URI';
Сертификат SSL установлен правильно и проверен нормально.Также проверено с base_url, переставленным на http, и настройкой vhost для порта 80. Подстановочный знак также проверен на другом поддомене без codeigniter, работает как положено.
Все страницы возвращаются с ошибкой 404.В журнале доступа Apache отображаются неверные конечные точки, к которым обращаются;
Журнал ошибок Apache:
[core: info] [pid 26683] [client xxxx: 53318] AH00128: Файл не существует:/ var / www / mysite / Account / login
Это неверная конечная точка - это должно быть нажатие / Application / Account / login для загрузки контроллера учетной записи.Это происходит только при текущей установке сервера (Ubuntu 16.04 в стандартном стеке LAMP).
Однако, если бы я настроил vhosts для запуска из папки приложения, это, очевидно, привело бы к потере .htaccess., активы, изображения и т. д. Кто-нибудь знает, почему CI, похоже, ищет контроллеры в корневом каталоге?