Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.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 如何为以下url重写更改.htaccess?_Php_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Php 如何为以下url重写更改.htaccess?

Php 如何为以下url重写更改.htaccess?,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,当我转到url/[7个字符的字母数字字符串]时,例如localhost/delta/SW9NZ1p 或者www.website.com/delta/SW9NZ1p,它应该重写为localhost/delta/product.php?url=SW9NZ1p或www.website.com/delta/product.php?url=SW9NZ1 目标:当我查看localhost/delta/SW9NZ1p时,我应该看到从localhost/delta/product.php执行的代码?url=SW

当我转到url/[7个字符的字母数字字符串]时,例如localhost/delta/SW9NZ1p 或者www.website.com/delta/SW9NZ1p,它应该重写为localhost/delta/product.php?url=SW9NZ1p或www.website.com/delta/product.php?url=SW9NZ1

目标:当我查看localhost/delta/SW9NZ1p时,我应该看到从localhost/delta/product.php执行的代码?url=SW9NZ1p,但url栏应该显示localhost/delta/SW9NZ1p

你能告诉我下面的代码有什么问题吗

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^delta/([a-zA-Z0-9]{7,})/?$  product.php?url=$1    [NC,L]  
</IfModule>

重新启动发动机
重写规则^delta/([a-zA-Z0-9]{7,})/?$product.php?url=$1[NC,L]

您可能会遇到“未找到”错误,因为如果您在root中使用htaccess,apache可能会逐字搜索
delta/as23221
,然后使用

delta目录中尝试此操作

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9]{7,})/?$ product.php?url=$1 [NC,L]
试试下面的根目录

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9]{7,})/?$ delta/product.php?url=$1 [NC,L]

描述“不工作”!我找不到你。你能详细说明一下吗?声称它应该起作用。可能是
mod_rewrite
模块实际上没有启用。我在delta目录中有.htacess文件。然后用第一部分中的条件尝试第二个重写规则。如果www.website.com/SW9NZ1p应该重写为www.website.com/delta/product.php,我该怎么办?url=SW9NZ1p你可以跳舞,很抱歉,我没有理解您。如果我转到url www.website.com/SW9NZ1p,它应该在内部重写为www.website.com/delta/product.php?url=SW9NZ1p。如何通过更改delta目录中的.htaccess文件来实现这一点?