Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: переадресация css...
 
 автор: freeing   (15.01.2010 в 17:24)   письмо автору
 
 

помогите с переадресацией css, мне необходимо что бы при вызове

http://www.test.ru/default.css

выводился мой css, а реально он

http://www.test.ru/.css/default.css

php работает нормально, а как css, jpg, gif… я незнаю

На сервере папки типа:

www
.css
    default.css
.htm
    default.htm
.php
    default.php


Вот мой .htaccess:

..
Options -Indexes

DirectoryIndex /.php/default.php

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


Как это сделать (спасибо)?

  Ответить  
 
 автор: heed   (15.01.2010 в 17:43)   письмо автору
 
   для: freeing   (15.01.2010 в 17:24)
 

что-то мне кажется рисковано называть папку .htm

у меня в httpd.conf такая запись чтобы .htaccess ,htpasswd не открывались
<FilesMatch "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</FilesMatch>
но папки .htm тоже не открываются

а так , если htaccess в корне сайта можно просто

RewriteRule ^default\.(css|htm|php)?$ .$1/$0 [L]

, только не помню как к $0 относится mod_rewrite ,) возможно придётся вместо $0 делать default.$1

  Ответить  
 
 автор: freeing   (15.01.2010 в 17:48)   письмо автору
 
   для: heed   (15.01.2010 в 17:43)
 

локально и на сервере папки типа .* работают нормально,
вообще не было таких проблем, уже 3 сервер сменил, все нормально....

а куда добавить?

так?:


Options -Indexes 

DirectoryIndex /.php/default.php 

RewriteEngine On 
RewriteBase /.php/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^default\.(css|htm|php)?$ .$1/$0 [L]

  Ответить  
 
 автор: freeing   (15.01.2010 в 17:49)   письмо автору
 
   для: heed   (15.01.2010 в 17:43)
 

не! не работает (


Not Found
The requested URL /.php/.css/css was not found on this server.

Подсказка Денвера
Вы ошиблись при наборе URL в браузере. Вероятнее всего, сервер пытается найти файл Z:/home/example.com/www/.php/.css/css, которого не существует. 

В случае использования CGI-скриптов, корректные пути к CGI-директориям следующие: 

URL Куда указывает 
http://***/cgi-glob/script.cgi /home/cgi-glob/script.cgi 
http://***/cgi/script.cgi /home/***/cgi/script.cgi 
http://***/cgi-bin/script.cgi /home/***/cgi-bin/script.cgi 







--------------------------------------------------------------------------------

Apache/2.2.4 (Win32) mod_ssl/2.2.4 OpenSSL/0.9.8d PHP/5.2.4 Server at example.com Port 80

  Ответить  
 
 автор: heed   (15.01.2010 в 17:59)   письмо автору
 
   для: freeing   (15.01.2010 в 17:49)
 

>RewriteBase /.php/

запрос http:.//site/default.css , даже не должен попадать в папку /.php/

я говорил , что если отлавливать эти запросы htaccess'ом выше этих папок,
если там и лежит, попробуйте вставить это RewriteRule выше RewriteBase

//
а про то правило которое с RewriteCond'ами я ничего не говорил

  Ответить  
 
 автор: freeing   (15.01.2010 в 18:13)   письмо автору
 
   для: heed   (15.01.2010 в 17:59)
 

так что делать?

  Ответить  
 
 автор: heed   (15.01.2010 в 19:19)   письмо автору
 
   для: freeing   (15.01.2010 в 18:13)
 

где лежал первый htaccess ?
.. 
Options -Indexes 

DirectoryIndex /.php/default.php 

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

он работал ??

  Ответить  
 
 автор: freeing   (16.01.2010 в 08:02)   письмо автору
 
   для: heed   (15.01.2010 в 19:19)
 

Он работал и лежал на уровень выше чем .php, .css... в корне, в папке www

  Ответить  
 
 автор: freeing   (16.01.2010 в 10:35)   письмо автору
 
   для: heed   (15.01.2010 в 19:19)
 

Я понял, моя проблема в том что у меня по умолчанию указан RewriteBase /.php/

понятно что при этом он папку /.css/ не видит, так как она не в /.php/.css/ а в корне, рядом с /.php/

твой вариант рабочий, при RewriteBase / но такие пути как:

http://www.example.com/a/
http://www.example.com/a/a/

Вызывают ошибку, при этом просто

http://www.example.com/
http://www.example.com/default.css

работают.

как это исправить?

  Ответить  
 
 автор: freeing   (17.01.2010 в 11:28)   письмо автору
 
   для: heed   (15.01.2010 в 19:19)
 

Очень надо, не работают ссылки стилей, картинок....

что мне делать, подскажите?

  Ответить  
 
 автор: heed   (17.01.2010 в 13:47)   письмо автору
 
   для: freeing   (17.01.2010 в 11:28)
 

проверил на своём неправилбно-работающем mod_rewrite
, у меня в корне просто
Options +FollowSymlinks -Indexes
RewriteEngine On

RewriteBase /
RewriteRule ^default\.(css|htm|php)$ .$1/$0 [L]

нормально работает (не считая того что .htm forbidden)

если добавляю ниже в этот-же файл Ваше
RewriteBase /.php/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ default.php?$1 [L]
# DirectoryIndex /.php/default.php 

вместо default.css вижу default.php
, Вот с RewriteBase'ами (upd: и редиректами)у меня и заглючило этот mod_rewrite
, когда я снёс сервис Apache2.2 перетащил папку и просто стал запускать его своей программой с совсем другими настройками.
, как должно быть на нормальном сервере не скажу

  Ответить  
 
 автор: freeing   (17.01.2010 в 18:12)   письмо автору
 
   для: heed   (17.01.2010 в 13:47)
 

а что значит ?$. $1/$0 [L]

у меня твой вариант тоже работает, просто не могу работать с адресами типа:

http://site.com/1/
http://site.com/1/2/

мне необходимо обрабатывать эти адреса для дальнейшей работы...

  Ответить  
 
 автор: freeing   (17.01.2010 в 20:24)   письмо автору
 
   для: heed   (17.01.2010 в 13:47)
 

все! решил проблему, тему можно закрывать

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования