Nasıl Apache yolu parametreleri sorgu parametreleri yazabilirsiniz?

2 Cevap php

Ben şu anda SEO açısından optimize etmek için çalışıyorum bir web sitesi var.

Ben gibi URL'ler ile çalışan site var:

domain.com /? app = hakkında

Beklendiği gibi benim app, $_GET[app], 'yaklaşık' olarak ayarlanır.

Now, I want to make it so that a URL like domain.com/about is treated as if it were domain.com /? app = hakkında.

Apache. Htaccess dosyasında bunu nasıl yapabilirim?

2 Cevap

Bu RewriteRule s olarak da bilinir, ve bunlar oldukça basit vardır:

RewriteEngine on
RewriteRule ^about$ /index.php?app=about

Here's the documentation

Bildiğim kadarıyla bu konuda nasıl, onu daha genel bir hale gibi:

RewriteEngine on
RewriteRule ^([A-Za-z]+)$ /index.php?app=$1

Bu index.php / personel / veya kontak yönlendirme gibi bir şey için herhangi bir istek yapacak app = [personel | iletişim]?

Senin. Htaccess bu kullanın

RewriteEngine on
RewriteBase /your-site # only if neccessary

RewriteRule ^([^/])$ index.php?app=$1 [R,L]

EDIT

Ben sadece dahili yeniden yazar .. son kural, ve kendisi tarafından URL'yi değişmez R bayrak olarak L bayrak anlam süreci eklendi. R = 301 yapıyor hata ayıklama için kullanışlıdır yeniden yazılamaz sayfasına tarayıcı iletecek.