htaccess重写的url和php-GET方法

htaccess重写的url和php-GET方法,php,.htaccess,Php,.htaccess,如果我更改了URL,如何管理GET方法 我将PHP网页的URL从 website.com/article.php?id=1&name=NewStory 到 .htaccess文件: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}\.php -f RewriteRule ^article/([0-9]+)/([0-9a-zA-Z_-]+) article.php?id

如果我更改了URL,如何管理GET方法

我将PHP网页的URL从

website.com/article.php?id=1&name=NewStory

.htaccess文件:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^article/([0-9]+)/([0-9a-zA-Z_-]+) article.php?id=$1&name=$2 [NC,L]
以前,创建URL很容易,因为您可以向URL添加您的信息,如:

article.php?id=1&name=NewStory
使用GET方法从URL获取信息也很容易,例如:

$articleID = $_GET['id'];
$articleName = $_GET['name'];
您能帮我找到一个解决方案,让我在使用.htaccess文件更改URL时保持URL不变,并管理GET方法吗

website.com/article/1/NewStory
如何使用GET方法从这样的URL获取信息

website.com/article/1/NewStory
如何编写URL以使其与.htaccess文件保持一致


谢谢大家!

这是因为您的新URL
/article/1/NewStory
当前通过
多视图
指向
/article.php
文件,而不是通过
重写规则

要解决这个问题,您需要禁用
Multiviews
并删除
RewriteCond%{REQUEST\u FILENAME}\.php-f
条件,以检查要重写的现有php文件

Options -Multiviews
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^article/([0-9]+)/([0-9a-zA-Z_-]+) article.php?id=$1&name=$2 [NC,L]

你好@AmitThakur,谢谢你的留言。请告诉我您的解决方案,如何使用GET方法从URL获取信息,并用PHP编写URL?@Andrei您可以访问
$\u GET['id'
$\u GET['name']article.php
文件中。