Gadgets92
- mobiles
- index.php
- product.php
- .htaccess
我有上面的文件夹结构
此外,我已使用 Windows 虚拟主机将 Gadgets92 文件夹注册为 gadgets92.test
在我的http://gadgets92.test/mobiles/index.php文件中,我有指向product.php文件的链接“http://gadgets92.test/mobiles/slug”。
我想使用 .htaccess 将“http://gadgets92.test/mobiles/slug”转换为“http://gadgets92.test/mobiles/product.php?slug=slug”
我已经尝试过了
RewriteEngine On
# Rewrite rule for "/mobiles/slug" to "/mobiles/product.php?slug=slug"
RewriteRule ^mobiles/([^/]+)$ /mobiles/product.php?slug=$1 [L]
我将.htaccess文件放到根目录(Gadgets92)并在其中写入以下代码。
RewriteEngine On
# Exclude "index.php" and "action.php" from rewriting in each directory
RewriteCond %{REQUEST_URI} !^/(mobiles|laptops|watches|televisions|headsets)/index\.php$
RewriteCond %{REQUEST_URI} !^/(mobiles|laptops|watches|televisions|headsets)/action\.php$
RewriteRule ^(mobiles|laptops|watches|televisions|headsets)/([^/]+)/?$ $1/product.php?slug=$2 [QSA,L]
现在它接受 slugs,在内部将其写为
product.php?slug=slug
。除了 product.php
之外,它不会重写这些文件夹中的其他文件。