Я застрял в странной проблеме.
У меня есть файл по адресу / public_html / academics / courses.php
Я хочу .htaccess для mod_rewrite URL, как показано ниже:
Исходный URL: http://niecdelhi.ac.in/academics/courses/
После mod_rewrite: http://niecdelhi.ac.in/index.php?inc=/academics/courses/
В общем, я хочу, чтобы mod_rewrite все URL-адреса в index.php и передавал URL-адрес в качестве параметра с именем "inc",Затем в index.php я включаю файл, выполняя include ($ _ GET ['inc']);
mod_rewrite работает для некоторых страниц сайта.и я получаю URL в $ inc.Но это не работает вообще для других страниц.
Например, рассмотрим два файла, которые существуют на сервере:
- http://niecdelhi.ac.in/academics/courses.php
- http://niecdelhi.ac.in/academics/library.php
mod_rewriteпервый работает, файл включается в index.php, а второй получает обычный существующий файл.не включенный в index.php
Надеюсь, вы понимаете проблему, с которой я сталкиваюсь.Пожалуйста, предоставьте мне решение.
.htaccess файл
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !\..*$ [NC]
RewriteCond %{QUERY_STRING} (.*) [NC]
RewriteRule ^(.*)$ index.php?inc=$1&%1 [L]
Страница работает: http://niecdelhi.ac.in/academics/courses/
Страница не работает: http://niecdelhi.ac.in/academics/library/
* РЕДАКТИРОВАТЬ *
Других .htaccess нигде нет.Хотя я нашел ключ к пониманию того, что происходит.Проблема происходит только на сервере Linux.Код работает правильно на сервере Windows. У меня есть сервер Linux с PHP 5.2.16.
Кроме того, некоторые страницы работают, а некоторые нет.Я обнаружил, что работают только те страницы, которые имеют папку с одинаковым именем в том же каталоге.Например, каталог Academics выглядит следующим образом:
academics/
|_ courses/
| |_ mba.php
| |_ mca.php
|_ courses.php
|_ library.php
Теперь, так как courses.php имеет папку с одинаковым именем в том же каталоге.Это получает mod_rewrite хорошо.Но библиотека.php не получает mod_rewrite.
Сервер Linux пропускает mod_rewrite для файлов, которые действительно существуют.Почему так ??