Какие изменения и в какие файлы вносит файл ".htaccess"?
Код, содержащийся в файле:
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / # Removes index.php from ExpressionEngine URLs RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC] RewriteCond %{REQUEST_URI} !/system/.* [NC] RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,NE,L] # Directs all EE web requests through the site index file RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php/$1 [L] </IfModule> Ещё такой вопрос: Какие изменения он вносит в другие файлы? Данный вопрос связан с тем, что этот файл при его копировании в корневой каталог некоего сайта (в настоящее время работаю с фреймворком "CodeIgniter") вносит в какие-то файлы какие-то изменения, в результате чего при попытке перейти по ссылке "<a href='localhost/www/kinomonster/index.php/news' ..." у меня происходит переадресация на "localhost/news" и я не могу перейти на интересующую меня страницу! |
localhost/www/kinomonster/index.php/news - более чем странный url.
Ни каких изменений в файлы .htaccess не вносит. https://www.proofsite.com.ua/article-2242.html |
В продолжение диалога......
А почему тогда у меня после появления этого файла возникают необратимые изменения, связанные с указанной переадресацией?
|
Читайте по ссылке о назначении и роли данного файла, одна из забот которого как раз перенаправления, что и прописано в вашем.
Не копируйте бездумно и без надобности чужие файлы себе, и не выдумывайте несуществующих url - нет и не может быть сетевых адресов подобных localhost/www/kinomonster/index.php/news. А после индексного файла ни как не может быть каталог. |
Я несовсем Вас понял...
До того, как я скинул файл с расширением ".htaccess" в папку, у меня всё работало и никаких переадресаций не происходило! Я удалил этот файл, но изменения, внесённые им, почему-то остались :( |
Цитата:
В вашем файле прописаны директивы которые все запросы перенаправляют на индексный файл. Если убрать этот файл то некому будет и перенаправлять, если речь о локальном сервере, то просто перезапустить его. Если вы при разработке будете втыкать в ссылки несуществующие пути, то после публикации проекта в веб ничего работать не будет. Сетевой путь может быть только как протокол://домен/, протокол://домен/путь/..., а не абракадабра что у вас указана. На удаленном сервере имя публичной папки (корень документов) может быть каким угодно, как захочется хостеру, так он ее и назовет, и это не обязательно www. Более того, имя этой папки в сетевом пути вообще не фигурирует, это корень документов, и сетевой адрес в ссылке, это либо относительный путь, либо если необходимость, то имя домена нужно не вписывать руками, а получать из окружения сервера. Вот тогда при переносе сайта с локального сервера на реальный все будет работать. |
В продолжение диалога......
Я всё привёл в первозданный вид (этого самого файла ".htaccess" там изначально не было, кстати), перезагрузил localhost, проверил - проблема осталась! :(
Забыл упомянуть, кстати: этот ".htaccess" я изначально специально поместил в корневую папку своего предварительного проекта, чтобы в адресной строке избавиться от ".../index.php/..." |
Я вам уже говорил, что у вас не адрес указан, а бред полнейший, и если речь о "localhost/news", то пока вы не приведете адрес к должному, запрос и будут происходить совсем не туда куда ожидается.
|
В продолжение диалога......
Ну так, а почему тогда ДО того, как я этот ".htaccess" скинул в корневую папку, У МЕНЯ ВСЁ ХОРОШО РАБОТАЛО???
|
kinomonster/index.php/news - это куда запрос?
|
Часовой пояс GMT +3, время: 22:15. |