В htaccess не работает RewriteCond

A
На сайте с 03.04.2010
Offline
179
985

Привет. В htaccess не работает RewriteCond. Что нужно подправить? Сервер на апач + нгинкс

WebAlt
На сайте с 02.12.2007
Offline
261
#1

mod_rewrite для Apache включен?

A
На сайте с 03.04.2010
Offline
179
#2

прочитал что нужно включить allowoverride, у меня

<Directory />

Options FollowSymLinks

AllowOverride None

</Directory>

так всегда работало, боюсь включать для всех, вдруг че-то поламается, но для парочки доменов нужно включить

как прописать для конкретного домена в виртуал хост?

<VirtualHost 222.22.22.222:8080>

ServerName site.info

DocumentRoot /var/www/user/data/www/site.info

SuexecUserGroup user user

CustomLog /dev/null combined

ErrorLog /dev/null

ServerAlias www.site.info

ServerAdmin webmaster@site.info

ScriptAlias /cgi-bin/ /var/www/user/data/www/site.info/cgi-bin/

AddHandler fcgid-script .php .php3 .php4 .php5 .phtml

</VirtualHost>

---------- Добавлено 07.11.2015 в 21:38 ----------

хотя, поставил allowoverride all общий и все равно не работает

это нужно для сапосайтов на html

L
На сайте с 30.10.2015
Offline
34
#3

RewriteEngine On вначале файла

...
A
На сайте с 03.04.2010
Offline
179
#4
levchernenko:
RewriteEngine On вначале файла

это есть..........

L
На сайте с 30.10.2015
Offline
34
#5

покажи содержимое htaccess, постараюсь помочь

A
На сайте с 03.04.2010
Offline
179
#6

#AddDefaultCharset UTF-8

DirectorySlash Off

<IfModule mod_rewrite.c>

RewriteEngine On

## Дополнительная защита - работает не на всех хостингах

#RewriteCond %{REQUEST_URI} /.__route/$

#RewriteRule ^(.*)$ $1 [R=404]

RewriteCond %{REQUEST_FILENAME} !/route.php$

RewriteCond %{REQUEST_FILENAME} !\.\S+$ [OR]

RewriteCond %{REQUEST_FILENAME} \.(htm|shtml|html|php|php4|php5)+$

RewriteRule ^(.*)$ route\.php\?$1 [QSA,L]

</IfModule>

L
На сайте с 30.10.2015
Offline
34
#7

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f [NC]

RewriteCond %{REQUEST_FILENAME} !-d [NC]

RewriteRule ^(.*)$ route\.php\?$1 [QSA,L]

</IfModule>

A
На сайте с 03.04.2010
Offline
179
#8

не помогло, наверно причина в чем-то другом, на другом хостинге тоже самое

L
На сайте с 30.10.2015
Offline
34
#9

если тебе нужно запретить прямой вызов файла route.php, то лучше сделать так >

добавь следующий код в файл route.php : if (strripos($_SERVER['REQUEST_URI'], 'route.php')) { exit; }

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий