簡體   English   中英

htaccess RewriteRule不起作用

[英]htaccess RewriteRule not work

我在這里的第一個問題希望找到正確的答案。

這里是:

我嘗試將http://mysite.it/home.php?pagina=ciao轉換為http://mysite.it/ciao

我把我的.htaccess放在里面:

RewriteEngine On
RewriteRule ^home.php?(.*)$ $1

它向我顯示: http://mysite.it/?pagina=ciao : http://mysite.it/?pagina=ciao

我知道RewriteRule中出了點問題,但是我不明白如何僅在home.php?pagina=才能選擇ciao ,我在PHP頁面上有此命令$get= @$_GET ['pagina'];

我表示感謝,希望能解決這個問題。

您可以在DOCUMENT_ROOT/.htaccess文件中使用以下代碼:

RewriteEngine On
RewriteBase /

RewriteCond %{THE_REQUEST} /home\.php\?pagina=([^\s&]+) [NC]
RewriteRule ^ %1? [R=302,L,NE]

RewriteCond %{THE_REQUEST} /(home)\.php\s [NC]
RewriteRule ^ %1 [R=302,L]

RewriteRule ^(home)/?$ $1.php [L,NC]

# internal forward from pretty URL to actual one
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^.]+)/?$ home.php?pagina=$1 [L,QSA]

我相信您正在尋找的是:

RewriteEngine On
RewriteRule ^([A-Za-z]+)$ /home.php?pagina=$1

我希望你沒有做:

require_once($get);

之后的代碼,因為那將是非常危險的...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM