Я искал все похожие вопросы и не смог:
Я написал URL-адрес, аналогичный тому, который был реализован в zend framework (PHP):
localhost/user/new
Вызывает контроллер именованный UserController
и выполняет функцию NewAction
. Работает как шарм.
Но у меня есть некоторые проблемы с $_GET
, $_POST
и изображениями, и я думаю, это из-за файла htaccess. Это происходит так:
Options +FollowSymLinks IndexIgnore */* RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . index.php
Я использую jQuery ui, а пользовательский интерфейс jQuery использует относительные ссылки в своем CSS.
Если я сделаю что-то вроде этого
http://localhost/login
изображения загружаются хорошо, и все работает.
Если я добавляю трейлинг-косую черту, например http://localhost/login/
или http://localhost/login/param1
, изображение загружается, но контроллер также вызывается:
http://localhost/login/param1/images/ui-bg_glass_75_e6e6e6_1x400.png
Я не понимаю, как это исправить. Существует также нерешенная проблема с post & get через формы, но я думаю, что это может быть связано, поэтому я просто хочу это очистить.
Спасибо!
позволь мне объяснить:
RewriteCond %{REQUEST_FILENAME} !-f
проверяет, пытается ли вы загрузить файл, который на самом деле не существует на вашем сервере, RewriteCond %{REQUEST_FILENAME} !-d
проверяет, пытаетесь ли вы загрузить каталог, который на самом деле не существует на вашем сервере ,
поэтому, если вы попытаетесь загрузить файл, который не существует, он перенаправляется на index.php.
если ваш URL-адрес «http: //localhost/login/param1/images/ui-bg_glass_75_e6e6e6_1x400.png», тогда в каталоге должно быть изображение с именем ui-bg_glass_75_e6e6e6_1x400.png, которое вызывает образы, которые находятся в каталоге param1, который находится в каталог под названием login, который находится в вашей корневой папке server. если нет такой структуры каталогов или изображения, тогда запрос ist отправляется на index.php
если вы хотите загрузить изображения изображений / ui-bg_glass_75_e6e6e6_1x400.png, тогда не помещайте login / param1 перед ним.
возможно, включая jquery-css, используя абсолютную ссылку, решит вашу проблему.
<link href="http://localhost/jquery-ui.css" type="text/css" rel="stylesheet">
то относительные ссылки в файле css будут относиться к пути, указанному в этом теге link.