這一直困擾着我一段時間。我的網站上有一些使用PHP切換案例來更改頁面內容的頁面。我遇到的問題是這些網頁的網址不是很友善。無法更改PHP開關案例URL
我想改變這個 :
http://www.abcprintingink.com/printing.php?page=print-and-mail
這樣:
http://www.abcprintingink.com/printing.php/print-and-mail
或更好
http://www.abcprintingink.com/printing/print-and-mail
我試過的.htaccess並沒有什麼作品。以下是我在.htaccess已經試過:
RewriteEngine On
#RewriteRule ^web.php/([^-]*)$ /web.php?page=$1 [QSA]
#RewriteRule ^/web.php/?page\=(.*)$ /web.php?page=$1 [l]
RewriteRule ^web.php/(.*)$ /web.php?page=$1 [l]
RewriteRule ^web.php/([a-zA-Z0-9\-/\.]+)/?$ web.php?page=$1 [L]
在.htaccess工作的其他命令,所以我知道它不是文件或Web服務器。
這是printing.php
<?php
/* SEO Switch Statements */
$pagename = "printing";
$page = htmlspecialchars($_GET["page"]);
switch ($page) {
case 'print-and-mail':
$page_title = 'page title';
$page_description = 'page desc';
$page_nav_active = 'print-and-mail';
$page_content_copy = 'page text';
$template_slider_image = 'image';
break;
}
?>
switch語句此外,這是鏈接的網頁菜單後面的腳本。你可以嘗試
<?php $menu=count($navigation); for ($i=0; $i<$menu; $i++)
{ echo '<div><li class="navigation"><a href="?page='.$navigation[$i].'">'
.$replaced = str_replace("-", " ", $navigation[$i]).'</a></li></div>'; } ?>
你是說這些鏈接不工作(404大概),或者他們確實工作,PHP的switch語句沒有接收GET中的值嗎? (所以頁面顯示錯誤的內容)? –
哦,不,他們工作正常。它只是像「webpage.php?page = content-page」這樣的URL顯示,無論在.htaccess文件中有重寫規則,我都無法讓它們以不同的方式顯示。 –
如果有幫助我在導航菜單中有這樣的代碼<?php $ menu = count($ navigation); for($ i = 0; $ i <$ menu; $ i ++){ \t \t \t \t echo'