Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.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
.htaccess htaccess可选参数_.htaccess_Rewrite - Fatal编程技术网

.htaccess htaccess可选参数

.htaccess htaccess可选参数,.htaccess,rewrite,.htaccess,Rewrite,我有一个非常简单的重写规则。我希望URL中的第二个参数是可选的,但目前我必须在URL中传递它: RewriteEngine On RewriteRule ^signup/([^/]*)/([^/]*)/$ /signup/index.php?e=$1&s=$2 [L] 我有URL/signup/PARAMETER/OPTIONAL-PARAMETER/ 如果禁用第二个参数,如何使url工作 Joe只需在其后面添加一个参数重写: RewriteEngine On RewriteRule

我有一个非常简单的重写规则。我希望URL中的第二个参数是可选的,但目前我必须在URL中传递它:

RewriteEngine On
RewriteRule ^signup/([^/]*)/([^/]*)/$ /signup/index.php?e=$1&s=$2 [L]
我有URL/signup/PARAMETER/OPTIONAL-PARAMETER/

如果禁用第二个参数,如何使url工作


Joe

只需在其后面添加一个参数重写:

RewriteEngine On
RewriteRule ^signup/([^/]*)/([^/]*)/$ /signup/index.php?e=$1&s=$2 [L]

# single parameter
RewriteRule ^signup/([^/]*)/$ /signup/index.php?e=$1 [L]

只需在其之后添加一个参数重写:

RewriteEngine On
RewriteRule ^signup/([^/]*)/([^/]*)/$ /signup/index.php?e=$1&s=$2 [L]

# single parameter
RewriteRule ^signup/([^/]*)/$ /signup/index.php?e=$1 [L]

我用了这个问题的答案。。。。谢谢你给我的提示

我还需要在URL中添加斜杠,所以这里是我的最终.htaccess

RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://domain.com/$1/ [L,R=301]

RewriteRule %{REQUEST_FILENAME} !-d
RewriteRule %{REQUEST_FILENAME} !-f
RewriteRule ^signup/(.+)/$ /signup/index.php?uri=$1 [QSA,L]

我用了这个问题的答案。。。。谢谢你给我的提示

我还需要在URL中添加斜杠,所以这里是我的最终.htaccess

RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ http://domain.com/$1/ [L,R=301]

RewriteRule %{REQUEST_FILENAME} !-d
RewriteRule %{REQUEST_FILENAME} !-f
RewriteRule ^signup/(.+)/$ /signup/index.php?uri=$1 [QSA,L]

这方面的一个好例子发布在stackoverflow.com上,另一个好例子发布在stackoverflow.com上