We are in the process of migrating this forum. A new space will be available soon. We are sorry for the inconvenience.

Regułki mod rewrite


no4b
14-03-2011, 14:54
Idea jest dobra, lighty nie ma bezpośredniego odpowiednika -d i -f z RewriteCond. Prawdopodobnie jeszcze jakieś rozszerzenia lub katalogi musisz wziąć pod uwagę jeśli się rozsypuje. Na koniec możesz dorzucić jeszcze "^/$" => "/index.php" choć nie wiem na ile to potrzebne, bo nie znam budowy Twojej strony.

Magda.
14-03-2011, 14:31
Cytat Napisał no4b
Jeśli będziesz mieć jakiś konkretny problem z którąś z reguł lub nie będziesz jakiejś konkretnej rzeczy rozumieć, zapytaj. Zadanie w stylu "mam długi htaccess, nie chce mi się uczyć, zróbcie za mnie" nie będzie tu podjęte.
Proste , jasne i logiczne.

Zatem:

url.rewrite = (
"^(.*)$" => "/index.php?do=/$1"
)

Po zastosowaniu tej regułki krótkie linki działają , ale strona wczytuje się bardzo długo , brak obrazków , kodowania strony , ogólnie rozsypka

żeby było lepiej dałam tą regułkę:

url.rewrite = (
"^/(.+)\.(jpg|jpeg|gif|png|swf|avi|mpg|mpeg|mp3|flv|i co|css)$" => "$0",
"^(.*)$" => "/index.php?do=/$1"
)

Po tym obrazki się pokazują , reszta bez zmian - rozsypka i powolne wczytywanie.

cache czyszczone , na serwerze , w przeglądarkach , error logi czyste.

na zdrowy rozum - to powinno działać , ale nie działa.

Dlatego powtórzę:

Bardzo proszę o pomoc bo już cały wekeend się z tym męcze i z miejsca ruszyć nie mogę.

pozdrawiam,

no4b
14-03-2011, 11:00
Jeśli sądzisz, że ktoś Ci to za darmo przerobi to sobie wybij z głowy
Jeśli będziesz mieć jakiś konkretny problem z którąś z reguł lub nie będziesz jakiejś konkretnej rzeczy rozumieć, zapytaj. Zadanie w stylu "mam długi htaccess, nie chce mi się uczyć, zróbcie za mnie" nie będzie tu podjęte.

Magda.
13-03-2011, 21:36
Witam serdecznie.

Mam problem z poprawnym działaniem skryptu na serwerze.
Znajomy udostępnił mi miejsce na serwerze , ale nie działają tak zwane przyjazne linki - są one potrzebne do poprawnego wyświetlania strony.
Jak się dowiedziałam , powodem jest brak jakichś regułek dla tego serwera.
Z tego co wyczytałam to trzeba przepisać plik htaccess , pod serwer lightpd - i tu kompletnie nie wiem jak się z tym uporać.
Bardzo proszę o pomoc bo już cały wekeend się z tym męcze i z miejsca ruszyć nie mogę.
poniżej zawartość pliku htaccess skryptu

Kod HTML:
# URL Rewrite

	RewriteEngine On

	#
	#  Full path to your site
	#
	RewriteBase /

	#
	#  Rules
	#
	RewriteCond %{REQUEST_FILENAME} !-f
	RewriteCond %{REQUEST_FILENAME} !-d
	RewriteRule ^(.*) index.php?do=/$1

	# Image Access Protection
	# RewriteRule ^file/pic/photo/(.*)\.(.*)$ static/image.php?file=$1&ext=$2


# Modify Headers

	# Cache files
	
		Header set Cache-Control "public"
		Header set Expires "Mon, 20 Apr 2015 20:00:00 GMT"
		Header unset Last-Modified
	
	 
	# Cache JavaScript & CSS
	
		Header set Cache-Control "public"
		Header set Expires "Mon, 20 Apr 2015 20:00:00 GMT"
		Header unset Last-Modified
	


# DEFLATE


    SetOutputFilter DEFLATE


# Drop problematic browsers
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
# BrowserMatch bMSIE !no-gzip !gzip-only-text/html
BrowserMatch bMSI[E] !no-gzip !gzip-only-text/html

# Don't compress images
SetEnvIfNoCase Request_URI 
.(?:gif|jpe?g|png)$ no-gzip dont-vary

# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary


# GZIP

  mod_gzip_on Yes
  mod_gzip_dechunk Yes
  mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
  mod_gzip_item_include handler ^cgi-script$
  mod_gzip_item_include mime ^text/.*
  mod_gzip_item_include mime ^application/x-javascript.*
  mod_gzip_item_exclude mime ^image/.*
  mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
Pozdrawiam