Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.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_.htaccess - Fatal编程技术网

PHP可以访问多个变量

PHP可以访问多个变量,php,.htaccess,Php,.htaccess,嗨,我正在使用以下htaccess RewriteEngine On RewriteBase /JustSnacksNew/ RewriteCond %{THE_REQUEST} /Products\.php\?category=([^\s&]+) [NC] RewriteRule ^ %1? [R=302,L] RewriteCond %{THE_REQUEST} /Products\?category=([^\s&]+) [NC] RewriteRule ^ %1? [R

嗨,我正在使用以下htaccess

RewriteEngine On
RewriteBase /JustSnacksNew/


RewriteCond %{THE_REQUEST} /Products\.php\?category=([^\s&]+) [NC]
RewriteRule ^ %1? [R=302,L]
RewriteCond %{THE_REQUEST} /Products\?category=([^\s&]+) [NC]
RewriteRule ^ %1? [R=302,L]
RewriteRule ^([A-Z,0-9,a-z-]+)$ Products.php?category=$1 [L,NC,QSA]

RewriteCond %{THE_REQUEST} /ViewProduct\.php\?category=([^\s&]+)&product=([^\s&]+) [NC]
RewriteRule ^ %1? [R=302,L]
RewriteCond %{THE_REQUEST} /ViewProduct\?category=([^\s&]+)&product=([^\s&]+) [NC]
RewriteRule ^ %1? [R=302,L]
RewriteRule ^([A-Z,0-9,a-z-]+)$ ViewProduct.php?category=([^\s&]+)&product=$1 [L,NC,QSA]

# PHP hiding rule
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [L]
在第一条规则中,我传递了一个变量。它工作正常。但是在第二条规则中,我传递了两个变量。但是它重定向到了第一条规则。 请帮我把这个修好

我传递的第一个url是:
/Products.php?category=catname

第二个url传递是:
/ViewProduct.php?category=catname&product=product

您可以使用:

RewriteEngine On
RewriteBase /JustSnacksNew/

RewriteCond %{THE_REQUEST} /ViewProduct(?:\.php)?\?category=([^&]+)&product=([^\s&]+) [NC]
RewriteRule ^ %1/%2? [R=302,L]
RewriteCond %{THE_REQUEST} /Products(?:\.php)?\?category=([^\s&]+) [NC]
RewriteRule ^ %1? [R=302,L]

# skip all files and directories from rewrite rules below
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]

# PHP hiding rule
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [L]

RewriteRule ^([A-Z,0-9-]+)/?$ Products.php?category=$1 [L,NC,QSA]
RewriteRule ^([A-Z,0-9-]+)/([A-Z,0-9-]+)/?$ ViewProduct.php?category=$1&product=$2 [L,NC,QSA]
您可以使用:

RewriteEngine On
RewriteBase /JustSnacksNew/

RewriteCond %{THE_REQUEST} /ViewProduct(?:\.php)?\?category=([^&]+)&product=([^\s&]+) [NC]
RewriteRule ^ %1/%2? [R=302,L]
RewriteCond %{THE_REQUEST} /Products(?:\.php)?\?category=([^\s&]+) [NC]
RewriteRule ^ %1? [R=302,L]

# skip all files and directories from rewrite rules below
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]

# PHP hiding rule
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [L]

RewriteRule ^([A-Z,0-9-]+)/?$ Products.php?category=$1 [L,NC,QSA]
RewriteRule ^([A-Z,0-9-]+)/([A-Z,0-9-]+)/?$ ViewProduct.php?category=$1&product=$2 [L,NC,QSA]

谢谢兄弟。它工作得很好。现在我正在子域上工作。当我将项目移动到域中时,我需要在htaccess文件中做哪些更改。请..域没有任何更改。或者最终
RewriteBase
。谢谢兄弟。它工作得很好。现在我正在子域上工作。当我将项目移动到域时,我需要在htaccess文件中做哪些更改。请..域没有任何更改。或者最终
RewriteBase