我想在PHP应用程序中更改我的URL,以便它使用友好的URL。
如果我启动它,url = localhost / Inhaalopdracht / MEOK1 / MVCthuis / boeken / index.php?author = 1
我希望它类似于:localhost / Inhaalopdracht / MEOK1 / MVCthuis / boeken / index.php / author / 1
这是我的索引:
<?php
//lees de controller
require_once("controller/Controller.php");
//start de controller
$controller = new Controller();
$controller->start();
?>
我的控制器:
<?php
require_once("model/Model.php");
class Controller
{
public $model;
public function __construct()
{
$this->model = new Model();
}
public function start()
{
if(!isset($_GET['book']) && !isset($_GET['author']))
{
$books = $this->model->getBookList();
include 'view/booklist.php';
}
else if(isset($_GET['book']))
{
$book = $this->model->getBook($_GET['book']);
include 'view/viewbook.php';
}
else if(isset($_GET['author']))
{
$author = $this->model->getAuthor($_GET['author']);
$books = $this->model->getBookList();
include 'view/viewauthor.php';
}
}
}
?>
其中一个信息页面的示例:
<html>
<head>
<title>De boekenlijst </title>
</head>
<body>
<table>
<tr>
<th> Titel </th>
<th> Schrijver </th>
<th> ISBN </th>
</tr>
<?php
foreach ($books as $key => $book)
{
echo '<tr>';
echo '<td><a href="index.php?book=' . $book->id . '">' . $book->title . '</a></td>';
echo '<td><a href="index.php?author=' . $book->id . '">' . $book->author . '</a></td>';
echo '<td>' . $book->isbn . '</td>';
echo '</tr>';
}
?>
</table>
</body>
</html>
答案 0 :(得分:0)
这可能对您有所帮助。试试这个。
在这种情况下,您必须使用301重定向URLS。这是一个例子:
重定向
localhost/a1/articles.php?id=1&name=abc
到
localhost/article/1/abc
使用以下内容修改.htaccess文件:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{QUERY_STRING} ^id=(.*)&name=(.*)$
RewriteRule ^articles\.php$ /article/%1/%2? [R=301]
RewriteRule ^article/([^-]+)/([^-]+)$ /articles.php?article_id=$1&article_name=$2 [L]
答案 1 :(得分:0)
首先,您需要启用Apache mod_rewrite扩展。 然后将.htaccess文件放在服务器的文档根目录中,其中包含类似的内容。它应该做的工作:
RewriteEngine On # Turn on the rewriting engine
RewriteRule ^Inhaalopdracht/MEOK1/MVCthuis/boeken/index.php/author/?$ Inhaalopdracht/MEOK1/MVCthuis/boeken/index.php?author=$1 [NC,L]
查看教程以获取更多详细信息:http://www.addedbytes.com/articles/for-beginners/url-rewriting-for-beginners/