Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 创建重写规则后传递参数_Php_Mod Rewrite - Fatal编程技术网

Php 创建重写规则后传递参数

Php 创建重写规则后传递参数,php,mod-rewrite,Php,Mod Rewrite,有人知道如何在创建重写规则后防止变量丢失吗? 输入[QSA]会给我一条Server500错误消息 我要这条规则 RewriteRule ^family-name/([^/.]+)/([^/.]+)$ family-name.php?familyName=$1&token=$2 [L] 从我得到的感觉来看,这是有效的 family-name.php/somthing/token 但是,当我转到$\u GET['familyName']或token时,它返回空白。为什么? 注意。重写规则位

有人知道如何在创建重写规则后防止变量丢失吗? 输入[QSA]会给我一条Server500错误消息

我要这条规则

RewriteRule ^family-name/([^/.]+)/([^/.]+)$ family-name.php?familyName=$1&token=$2 [L]
从我得到的感觉来看,这是有效的

family-name.php/somthing/token

但是,当我转到
$\u GET['familyName']
或token时,它返回空白。为什么?

注意。重写规则位于my.htaccess页面中

更新:

我已将代码缩减为:

重新启动引擎

重写规则^my family/family name/([a-z]+)/([a-z0-9]+)$my family/family-
name.php?familyName=$1和token=$2[QSA、L、NC]

RewriteCond%{REQUEST\u FILENAME}-f

RewriteCond%{REQUEST\u FILENAME}-d

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

我的参数仅在本地传递到下一页,而不是上传到我的实时站点。有什么想法吗?

你应该打开网页(用你的域名)

并使用
$\u GET['token']
调用您的参数,而不是
$\u SESSION['token']

如果您想
重写规则

http://example.com/family-name.php/something/token
你应该:

RewriteRule ^family-name.php/([^/.]+)/([^/.]+)$ family-name.php?familyName=$1&token=$2 [L]
您应该打开页面(使用您的域名)

并使用
$\u GET['token']
调用您的参数,而不是
$\u SESSION['token']

如果您想
重写规则

http://example.com/family-name.php/something/token
你应该:

RewriteRule ^family-name.php/([^/.]+)/([^/.]+)$ family-name.php?familyName=$1&token=$2 [L]

检查您的服务器错误日志,为什么会出现错误500?好的,我现在不再看到这个错误500!!!不管怎样,参数仍然没有被传递。在下一页我有:if(isset($_SESSION['username']){Do something};它没有做它更正:如果(isset($_GET['familyName']){do something};检查您的服务器错误日志,为什么会出现错误500?好的,我现在不再看到这个错误500!!!不管怎样,参数仍然没有被传递。在下一页我有:if(isset($_SESSION['username']){Do something};它没有做它更正:如果(isset($_GET['familyName']){do something};我发现这个问题的同时,你发布这个。就像你说的,我错过了完整的道路。谢谢你抽出时间回复。我回复了,但因为我是新来的,所以它说我不能——很抱歉你已经回复了。谢谢享受编程等方面的乐趣。嗯,它离线工作(本地主机),但不在线,是的,我确实更改了路径
RewriteRule^https://strictlyfamily.com/my-family/family-name/([a-z]+)/([a-z0-9]+)$https://strictlyfamily.com/my-family/family-name.php?familyName=?$1和familyCode=$2[NC、QSA、L]
参数没有传递到下一页,这是您规则中的一个输入错误。在实现之前,您可以检查此页面上的规则:我在您发布此消息的同时发现了问题。就像你说的,我错过了完整的道路。谢谢你抽出时间回复。我回复了,但因为我是新来的,所以它说我不能——很抱歉你已经回复了。谢谢享受编程等方面的乐趣。嗯,它离线工作(本地主机),但不在线,是的,我确实更改了路径
RewriteRule^https://strictlyfamily.com/my-family/family-name/([a-z]+)/([a-z0-9]+)$https://strictlyfamily.com/my-family/family-name.php?familyName=?$1和familyCode=$2[NC、QSA、L]
参数没有传递到下一页,这是您规则中的一个输入错误。您可以在执行以下操作之前检查此页面上的规则: