Mam tę strukturę: site.com/api/index.php
. Kiedy wysyłam dane do site.com/api/
, nie ma problemu, ale wyobrażam sobie, że byłoby lepiej, gdyby api działało bez końcowego slasha również, tak jak to: site.com/api
. Powoduje to przekierowanie 301, a tym samym utratę danych (ponieważ dane nie są przekazywane). Próbowałem każdego ponownego napisania, o jakim myślałem, i nie mogłem uniknąć przekierowania. To jest moja obecna zasada ponownego zapisu (choć może być nieistotna).Jak uzyskać dostęp do katalogu index.php bez ukośnego ukośnika I nie uzyskać 301 przekierowania
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^api/(.*)$ api/index.php [L]
Czy mogę utworzyć ten adres URL i zachować dane dotyczące wpisu bez użycia ukośnika?
Niektóre przepisuje że nie działa: (wszystko nadal przekierowują)
RewriteRule ^api$ api/index.php [L]
RewriteRule ^api/*$ api/index.php [L]
Końcowy ukośnik jest dodawany przez moduł apache mod_dir: http://httpd.apache.org/docs/2.2/mod/mod_dir.html –
Również twoja reguła przepisywania, tak jak jest napisana, zawiera końcowy ukośnik jako część reguły. Prawdopodobnie po prostu usuniesz '/' z reguły i to zadziała. –
W prawo. Myślałem, że mógłbym przepisać żądanie do tego katalogu na prawo do index.php, tak aby moduł nigdy się nie uruchamiał, ale to nie zadziałało. Zaktualizuję, aby pokazać, co tam wypróbowałem. – m59