Bir REST API kurmaya çalışıyorum ve URL deyince, örneğin, api/family
bu bilgi ile bir JSON nesnesini döndürür. Ancak, api/
'u eğik çizgiden sonra hiçbir şey yapmadan isset($_GET['url'])
true
olduğunu söylüyorum. İlk önce beyaz alan olduğunu düşündüğüm diziyi kırpmayı denedim, ama bu da değildi. Genelde PHP kodu: Ben ben yanlış htacess
kurmak mümkün Eğer durum olduğunu sanmıyorum, ama ben bir etkiye sahip olabileceğini düşünebiliriz tek şey iken
if (isset($_GET['url'])) {
echo "WRONG";
}
$_GET
değişkeni (olmamasına rağmen). isset
gerçek çıkışı neden keşfetme
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule api/(.*)$ api/api.php?url=$1 [QSA,NC,L]
</IfModule>
Herhangi bir yardım mutluluk duyacağız.
Yeniden yazım kuralınız sayesinde * her zaman * ayarlayın. * Bir değer * olup olmadığını kontrol etmeniz gerekir. –
Belirtildiği gibi, bir boş ($ _ GET ['url']) 'yapabilirdiniz – segFault
@JohnConde İyileştirme konusunda herhangi bir öneriniz var mı? Sanırım bunun neden oluştuğunu anlıyorum, url api/api.php nedir? Url = başka bir deyişle url "boş" bir değerdir. Ayrıca, çok uzun bir süre öncesine kadar bir yan notta, localhost/api/api/api.php dizinine yönlendirme yaptım, böylece bir iyileştirme önerisi büyük ölçüde takdir edilecektir. – jimmyjacks