Şifreli Parametreleri ile URI'yi Isteyen zaman 404 Bulunamadı

1 Cevap php

Ben aynı PHP / MySQL yapılandırması ile önceki sağlayıcı barındırma üzerinde çalışmak için kullanılır, çünkü bu Apache yapılandırma ile bazı sorun eminim. Benim uygulamada, kullanıcıların bu gibi URI'lerinin giderek fotoğrafları silmek mümkün:

http://example.com/my-account/remove-media/id/9/ret/my-account%252Fedit-album%252Fid%252F1

Paramater kimliği kaldırılacak bir fotoğrafın bir kimliği olan, parametre ret kullanıcı fotoğrafın çıkarıldıktan sonra ama ben metin ile 404 Not Found hatası olsun böyle bir linke tıkladıktan sonra yönlendirilmesi gereken bir göreli URL:

Not Found

The requested URL /public/my-account/remove-media/id/9/ret/my-account/edit-album/id/1 was not found on this server.

Benim önceki sağlayıcı barındırma üzerinde çalışmak için kullanılan rağmen bu yüzden sadece bazı basit Apache yapılandırma sorunu sanırım?

Bir şey daha, / halka belge kökünü değiştiren bir htaccess dosyası var:

RewriteEngine On

RewriteRule ^\.htaccess$ - [F]

RewriteCond %{REQUEST_URI} =""
RewriteRule ^.*$ /public/index.php [NC,L]

RewriteCond %{REQUEST_URI} !^/public/.*$
RewriteRule ^(.*)$ /public/$1

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.*$ - [NC,L]

RewriteRule ^public/.*$ /public/index.php [NC,L]

Ortak klasördeki MVC için ikinci bir htaccess dosyası var:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ /index.php [NC,L]

1 Cevap

Bu nedeniyle AllowEncodedSlashes direktifi Kapalı ayarlama nedeniyle muhtemelen. Kötü haber bu kadar. Htaccess yapmayacağım, bu sunucu düzeyde yapılandırılmış olduğunu. Eğer değiştirilemez olamaz, o zaman ben kodlanmamış dizeleri işlemek için uygulama kodunu değiştirerek gitmek için bir yol olacağını düşünüyorum.

.../ret/my-account%252Fedit-album%252Fid%252F1 -> .../ret/my-account/edit-album/id/1

/ Ret / parçası her sonuncusu ise, (ret hedef tüm sonra) bir sorun bu kadar olmamalı.