PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : ترجمه کد htaccess به رول Nginx



naghmesra
May 16th, 2016, 16:17
سلام و درود

هر کدام از اساتید که دستی بر آتش دارد لطفا ترجمه درست Nginx کد htaccess زیر را قرار دهد.


RewriteEngine On
RewriteRule ^([0-9]+)x([0-9]+)/[http:\/\/]*(.+)$ index.php?w=$1&h=$2&src=http://$3 [QSA,L]

من بارها با مترجم های مختلف ترجمه کرده ام ولی عمل نمیکند.

ببخشید فراموش کردم اینو بگم کد باید روی پوشه ای به نام resizer اعمال بشه نه روی روت.

تشکر

fadak
May 16th, 2016, 16:43
با سلام
از این کد استفاده کنید دوست عزیز:


location / { rewrite ^/([0-9]+)x([0-9]+)/[http:\/\/]*(.+)$ /index.php?w=$1&h=$2&src=http://$3 break; }

naghmesra
May 16th, 2016, 16:47
با سلام
از این کد استفاده کنید دوست عزیز:
ببخشید فراموش کردم اینو بگم کد باید روی پوشه ای به نام resizer اعمال بشه.
الان کدی که دادید روی روت سرور اعمال میشه.

naghmesra
May 17th, 2016, 11:03
یعنی کسی نمیتونه ترجمه درست این کد htaccess رو به رول Nginx بده؟

us12
May 17th, 2016, 11:54
nginx مثل آپاچی نیست که تنظیمات هر فولدر را داخل خودش قرار دهید .
باید در فایل کانفیگ اصلی این رول را اضافه کنید :



location / {
rewrite ^/([0-9]+)x([0-9]+)/[http:\/\/]*(.+)$ /index.php?w=$1&h=$2&src=http://$3 last;
}


اینکه این رول کجا فایل کانفیگ قرار میگره و قبل و بعدش چی هست هم خیلی تاثیر داره ...

naghmesra
May 17th, 2016, 13:13
nginx مثل آپاچی نیست که تنظیمات هر فولدر را داخل خودش قرار دهید .
باید در فایل کانفیگ اصلی این رول را اضافه کنید :



location / {
rewrite ^/([0-9]+)x([0-9]+)/[http:\/\/]*(.+)$ /index.php?w=$1&h=$2&src=http://$3 last;
}


اینکه این رول کجا فایل کانفیگ قرار میگره و قبل و بعدش چی هست هم خیلی تاثیر داره ...

سلام و درود

متوجه هستم که Nginx متفاوت با Apache هست ولی الان شما کدی رو که دادید ما قرار بدیم ، در اصل کد برروی فایل index.php روت هاست اعمال میشه که اصلا هاست در روت فایل index.php ندارد.در اصل من میخوام که کد برروی /resizer/index.php عمل کنه.

اینم فایل کانفیگ :

server{


listen 0.0.0.0:80;
server_name example.ir www.example.ir ;
access_log /var/log/nginx/domains/example.ir.log;
access_log /var/log/nginx/domains/example.ir.bytes bytes;
error_log /var/log/nginx/domains/example.ir.error.log;
root /home/cdnakspi/domains/example.ir/public_html;
index index.php index.html index.htm;
include /usr/local/directadmin/data/users/usereman/nginx_php.conf;
include /etc/nginx/webapps.conf;
location ~* \.(?:jpg|jpeg|gif|png|ico|swf)$ {
expires 1M;
access_log off;
add_header Cache-Control "public";
}
location / {
autoindex on;
}




}

تشکر

us12
May 17th, 2016, 16:08
این را تست کنید :



server{




listen 0.0.0.0:80;
server_name example.ir www.example.ir ;
access_log /var/log/nginx/domains/example.ir.log;
access_log /var/log/nginx/domains/example.ir.bytes bytes;
error_log /var/log/nginx/domains/example.ir.error.log;
root /home/cdnakspi/domains/example.ir/public_html;
index index.php index.html index.htm;
include /usr/local/directadmin/data/users/usereman/nginx_php.conf;
include /etc/nginx/webapps.conf;
location ~* \.(?:jpg|jpeg|gif|png|ico|swf)$ {
expires 1M;
access_log off;
add_header Cache-Control "public";
}
location / {
autoindex on;
}




location /resizer/ {
rewrite ^/([0-9]+)x([0-9]+)/[http:\/\/]*(.+)$ /index.php?w=$1&h=$2&src=http://$3 last;
}


}

naghmesra
May 17th, 2016, 18:06
این را تست کنید :



server{




listen 0.0.0.0:80;
server_name example.ir www.example.ir ;
access_log /var/log/nginx/domains/example.ir.log;
access_log /var/log/nginx/domains/example.ir.bytes bytes;
error_log /var/log/nginx/domains/example.ir.error.log;
root /home/cdnakspi/domains/example.ir/public_html;
index index.php index.html index.htm;
include /usr/local/directadmin/data/users/usereman/nginx_php.conf;
include /etc/nginx/webapps.conf;
location ~* \.(?:jpg|jpeg|gif|png|ico|swf)$ {
expires 1M;
access_log off;
add_header Cache-Control "public";
}
location / {
autoindex on;
}




location /resizer/ {
rewrite ^/([0-9]+)x([0-9]+)/[http:\/\/]*(.+)$ /index.php?w=$1&h=$2&src=http://$3 last;
}


}


تشکر بابت کد.
کد تست شد ولی rewrite انجام نشد.