Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Поддиректории с index.php и ст атикой в них.
- To: nginx-ru@xxxxxxxxx
- Subject: Поддиректории с index.php и ст атикой в них.
- From: "Sergey Sholokh" <nginx-forum@xxxxxxxx>
- Date: Tue, 20 Apr 2010 11:33:55 -0400
- Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mickey.jlkhosting.com; s=x; h=Sender:From:Message-ID:Content-Transfer-Encoding:Content-Type:Subject:To:Date; bh=6XhSBXazHySgUmoCa9iQNag9kDe3skp9vH7Ts0c47Eo=; b=dEbw+ZJQtc++901L+kxZE2zBXumte+54bhI3AIU5gc6hbjkOixW2RiIHwgqVXPWfqF4Dbq7yHlOv5LxbxB8ZOUGos/n+j37ziL00oBaTvPkaZE/uZYVrrQ9mbGxOzAYN;
Доброго времени суток!
Подскажите, пожалуйста, что я не так делаю.
Есть проект, который состоит из кучи директорий. В каждой директории
присутсвует index.php и каталоги со статикой, которые вызываются из индекса
(пути относительные).
Проблема в том, что если не прописывать locaton для каждой директории и в нем
index, то при заходе в директорию index.php вызывается (внутренний редирект) ,
но вот пути к статике в таком случае неправильные, от центрального корня. Если
же вызвать /directory/index.php - то все ок.
C прописанными location dir1 и dir2 все работает, но директорий много и все
прописывать не очень хотелось бы.
Возможно, есть правильный путь решить эту проблему, не прописывая все множество
директорий как location.
Чтение док пока просветления не принесло.
Пример конфига:
server {
listen 1.1.1.1:80 default backlog=4096 sndbuf=32k rcvbuf=16k;
server_name some.domain www.some.domain;
client_max_body_size 16M;
client_header_buffer_size 16k;
large_client_header_buffers 16 256k;
set $root_dir "/var/www/Site";
root $root_dir;
index index.php;
fastcgi_index index.php;
access_log /var/log/nginx/some_access.log main;
error_log /var/log/nginx/some_error.log;
location /dir1 {
root $root_dir;
try_files $uri $uri/ =404;
index index.php;
}
location /dir2 {
root $root_dir;
try_files $uri $uri/ =404;
index index.php;
}
location / {
root $root_dir;
try_files $uri $uri/ =404;
if ($request_method = GET) {
rewrite ^/(.*)/$ /$1 permanent; }
if (-d $request_filename) {
rewrite ^(.*[^/])$ $1/ break; }
}
location = /index.php {
if ($request_uri = /index.php) {
rewrite ^ http://$host? permanent; }
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
location ~* \.(jpg|jpeg|gif|png|ico|css|bmp|js|swf|pdf)$ {
root $root_dir;
expires 7d;
add_header Cache-Control public;
access_log off;
}
location ~* \.php$ {
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
}
Posted at Nginx Forum: http://forum.nginx.org/read.php?21,77141,77141#msg-77141
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru
|