Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Nginx rewrite for Maxsite CMS
- To: nginx-ru@xxxxxxxxx
- Subject: Nginx rewrite for Maxsite CMS
- From: "Dmitriy_K" <nginx-forum@xxxxxxxx>
- Date: Tue, 31 Aug 2010 14:28:33 -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=bXMLs7pMx4yt7lucL3c1T9gQyk4hipSMI9vkJbExs3A=; b=twJD8JbDSLkYekXdcEJJjOAmXT89K4Wx3RcHlkmG1lkNSzVvd5QdxteYWDypH1wvGqdAsVfKe5q/0XLg1L9ELlyWHvRwEt31DUiPUdrDAiCSF2IO41fLj/nAwfe/rwDM;
Завяз с написанием реврайтов для CMS
Maxsite.
Там даны только примеры реврайтов для
apache (.htaccess), и то весьма невнятно:
[quote]
RewriteEngine on
RewriteBase /
RewriteCond $1 !^(index\.php|uploads|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteRule ^(.*)$ /index.php?/$1 [L,QSA]
На некотрых серверах вместо строчки:
RewriteRule . /index.php [L]
можно попробовать указать:
RewriteRule ^(.*)$ /index.php?/$1 [L,QSA]
Вариант для Nginx с апачем в качестве
надстройки:
RewriteRule ^(.*)$ /index.php?$1 [L,QSA][/quote]
Понимай как хочешь... :-(
Через поиск никакого рабочего варианта
реврайтов найти не удалось.
Пробовал прописать в конфиге nginx (он у
меня без бэкенда) вариации типа:
[code]
server {
listen 80;
server_name net.open.ru net;
location / {
root /site/maxsite;
index index.php;
if ($query_string =
!^(index\.php|uploads|robots\.txt|favicon\.ico)) {
rewrite ^/(.*)$ /index.php?$1 last;
break;
}
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php?$1 last;
break;
}
# if ($request_uri ~* ^.*/.*$) {
# rewrite ^/(\w*)/(.*)$ /$1/index.php?q=$2 last;
# break;
# }
}
location ~* ^.+\.(jpg|jpeg|gif|css|png|js|ico)$ {
root /site/maxsite;
#access_log off;
break;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
/site/maxsite$fastcgi_script_name;
include fastcgi_params;
}
}
[/code]
При попытке нажать клавишу первой
страницы CMS "Установить" не происходит
корректная передача параметров другой
странице. В результате, выдаётся пустое
окно, хотя в лог пишется "200". Также
некорректно обрабатываются
несуществующие URL. Выдаётся ошибка
типа:
[code]Table 'maxsite.mso_page' doesn't exist
SELECT `page_id` FROM (`mso_page`) WHERE `page_slug` = 'beliberda' OR
`page_id` = 'beliberda' LIMIT 1
[/code]
К сожалению, в логах информации как
обрабатывались реврайты нет, даже при
установке уровня подробностей "info".
Буду очень благодарен за помощь в
устранении ошибки в правилах
реврайтов.
Posted at Nginx Forum:
http://forum.nginx.org/read.php?21,125748,125748#msg-125748
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru
|