0

我一直在尝试用 htaccess 文件重写我的 URL。我的项目使用我的 index.php 作为它的基本控制器。我使用获取值“naam”从数据库中获取页面。

示例:localhost/YourDesigns/YDCMS/index.php?naam=home(显示主页) localhost/YourDesigns/YDCMS/index.php?naam=about(显示关于页面)

现在我想重写要显示的 URL: localhost/YourDesigns/YDCMS/home (这显示主页) localhost/YourDesigns/YDCMS/about (这显示关于页面)

我自己做了一些 htaccess 的东西,我已经成功地从 url 中删除了“index.php”,但“naam”仍然存在。

我该如何删除这个?这是我当前的 htaccess 文件:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /YourDesigns/YDCMS/index.php?naam=/$1 [L]

提前致谢 :)

4

1 回答 1

1

我认为您查看该过程的方式并不完全正确,如果您想显示 url,就像您说的那样,localhost/YourDesigns/YDCMS/home您必须首先将 html 内容中的 url 替换为该格式,然后使用 RewriteRule 在内部调用正确的路径:

RewriteRule ^desired_url_path/([a-z0-9\-]+)$ /base_url_path/index.php?naam=$1 [L]

这样,当用户单击链接时,Apache 服务器将使用上面的正则表达式通过基本上说的规则转换 url:基本 url 之后的所有内容都是要在 index.php 上传递的参数值。自然地,可以修改正则表达式以满足您的需要,我在上面写的那个是基本的字符串模式。

于 2013-03-26T08:13:29.233 回答