2014-11-17 2 views
1

Я это .htaccess правила перезаписи.htaccess для Nginx конф

AddDefaultCharset UTF-8 
RewriteEngine On 
RewriteRule ^(administrator) - [L] 
RewriteRule ^$ public/ [L] 
RewriteRule (.*) public/$1 [L] 

и версия Nginx правила перезаписи

charset utf-8; 
rewrite ^/$ /public/ last; 
rewrite /(.*) /public/$1 last; 

location ~* ^/(administrator) { 
    break; 
} 

Текущий .htaccess перенаправить все запросы/общих папок, за исключением запроса/администратора , С Nginx правит [domain.tld/rss.php не работает] [domain.tld/Администратор работает] [domain.tld рабочий] [Файл не найден.]

Мое приложение является

Структура компании
. 
.. 
index.php [require public/index.php] 
administrator/index.php 
public/index.php 
public/rss.php 
public/css 
public/js 

ответ

2

Sepcifiy индексный файл: index index.php.

Кстати, вы должны переписать в местах, чтобы избежать теста для каждого запроса. Это также лучше для удобочитаемости/maitainability.

server { 

    server_name domain.tld; 
    root /path/to/root; 

    location ~ /(administrator|public) { 
     index index.php; 
     ... 
    } 

    location/{ 
     rewrite ^/$ /public/ last; 
     rewrite ^(.*)$ /public/$1 last; 
    } 

} 
Смежные вопросы