Rewrite URL in PHP



我对.htaccess文件和该文件中的代码有问题。我使用PHP创建了一个简单的CMS。在Fron,最终用户可以查看列出的产品并购买相同的产品。问题出在哪里?问题是,当localhost/site3/index.php上列出的产品和打开的随机产品时,您可以查看有关该项目的所有信息,但当用户打开类别products/protection-program/inspection-gloves/index.php并在该页面上单击随机产品,则用户会收到错误在该服务器上找不到请求的URL。如何生成.htaccess文件以支持下一个URL。

我的.htaccess文件:

RewriteEngine On
RewriteRule ^([0-9A-ZA-Z-]+)$ details.php?pro_id=$1 [QSA,NC,L]

文件details.php.htaccess中写入,该文件被存储到localhost/site3/details.php中。在该文件中编写了用于预览所有产品信息的代码。

我尝试下一个:

  1. details.php文件复制并粘贴到localhost/site3/products/protection-program/inspection-gloves/details.php中,然后打开该类别中列出的一些产品,但不起作用。

  2. RewriteRule ^([0-9A-ZA-Z-]+)$ details.php?pro_id=$1 [QSA,NC,L]更改为RewriteRule ^([0-9A-ZA-Z-]+)/([0-9A-ZA-Z-]+)/([0-9A-ZA-Z-]+)$ details.php?pro_id=$1 [QSA,NC,L]。有了这个变化,当打开存储在下一个URLlocalhost/site3/products/protection-program/inspection-gloves/上的随机产品时,我会自动重定向到localhost/site3/index.php。不知道原因。

注意:我有一些产品的类别/子类别更少或更多

我想生成.htaccess来支持我的所有URL。任何建议或帮助都会有所帮助。谢谢大家!

我找到了解决方案。

.htaccess文件中的现有代码上添加下一个代码:

RewriteEngine On
RewriteRule ^products/category/subCategory/([0-9A-ZA-Z-]+)$ details.php?pro_id=$1 [NC,L]

使用该代码,我解决了问题。

最新更新