htaccess - 无法写入从 GET 到“/”的重定向
htaccess - can't write redirect from GET to "/"
我正在尝试这个:
RewriteRule ^pages/product/([0-9]+) pages/product?id=
但是网站给我 404 错误,这一行有什么问题?如果我使用 get 参数转到页面,此页面加载正常:product?id=1
,但 product/1
未加载。
htaccess 文件,它位于站点根目录中:
ErrorDocument 404 /404.php
RewriteEngine On
AddDefaultCharset utf-8
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ .php
RewriteRule ^pages/product/([0-9]+) pages/product?id=
更改规则的顺序并添加标志 esp L
以确保两个规则不会相互跨越:
ErrorDocument 404 /404.php
Options -MultiViews
RewriteEngine On
AddDefaultCharset utf-8
RewriteRule ^pages/product/(\d+) pages/product.php?id= [L,QSA,NC]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ .php [L]
我正在尝试这个:
RewriteRule ^pages/product/([0-9]+) pages/product?id=
但是网站给我 404 错误,这一行有什么问题?如果我使用 get 参数转到页面,此页面加载正常:product?id=1
,但 product/1
未加载。
htaccess 文件,它位于站点根目录中:
ErrorDocument 404 /404.php
RewriteEngine On
AddDefaultCharset utf-8
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ .php
RewriteRule ^pages/product/([0-9]+) pages/product?id=
更改规则的顺序并添加标志 esp L
以确保两个规则不会相互跨越:
ErrorDocument 404 /404.php
Options -MultiViews
RewriteEngine On
AddDefaultCharset utf-8
RewriteRule ^pages/product/(\d+) pages/product.php?id= [L,QSA,NC]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ .php [L]