Codeigniter удалить index.php из URL localhost: 82 / project - PullRequest
0 голосов
/ 27 сентября 2018

У меня есть URL

http://localhost:82/project/index.php/home

Я хочу удалить index.php из вышеупомянутого URL.

Примерно так: http://localhost:82/project/home

Я использовал много решений

1) У меня есть файл index.php для удаления из файла config.php:

$config['index_page'] = '';

2) изменить "uri_protocol" в файле config.php:

$config['uri_protocol'] = 'REQUEST_URI';

Мой htaccess:

RewriteEngine On
RewriteBase /project/
RewriteCond %{REQUEST_URI} ^system.*
RewriteCond $1 !^(index\.php|images|js|uploads|css|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

Кто-нибудь освоил здесь, чтобы решить мой вопрос?Заранее спасибо.

Ответы [ 4 ]

0 голосов
/ 27 сентября 2018

Установите ваш базовый URL в конфигурации как

$config['base_url'] = 'http://localhost:82/project/'

В вашем .htaccess, попробуйте с этим, я использовал это в своих проектах CI.

RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

Поместите этот файл впапка вашего проекта.

Folder structure

0 голосов
/ 27 сентября 2018

используйте этот Codeigniter .htaccess файл и установите его в свое корневое приложение.

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

Как этот ...

project_name
    -application
    -assets
    -system
    -user_guide
    -.htaccess // like this one
0 голосов
/ 27 сентября 2018

Попробуйте использовать это

RewriteEngine on
#RewriteBase /project/
RewriteCond $1 !^(index\.php|images|admin|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|images|admin|robots\.txt)
RewriteRule .* index.php/$0 [PT,L]

Я использую это и работаю на меня.Спасибо

0 голосов
/ 27 сентября 2018

Если вы используете Apache Server, вы должны включить mod_rewrite.А затем измените ваш файл .htaccess с помощью приведенного ниже кода.

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

Для получения дополнительной информации посетите страницу здесь

Попробуйте подобный вопрос здесь

...