【问题标题】:htaccess URL rewrite file/param/value formathtaccess URL 重写文件/参数/值格式
【发布时间】:2016-03-19 14:23:45
【问题描述】:

我正在编写一个 htaac​​cess 规则来重写我下面的 URL

http://example.com/edit_user.php?enc=aWQ9MQ%3D%3D

作为 http://example.com/edit_user/enc/aWQ9MQ%3D%3D

我尝试使用http://www.generateit.net/mod-rewrite/index.php,但它给了我类似的东西

RewriteEngine On
RewriteRule ^enc/([^/]*)$ /edit_user.php?enc=$1 [L]

但这是 edit_user.php 文件的固定规则,我想要一个适用于所有文件的规则以相同的方式。

此外,如果用户输入 http://example.com/edit_user/,页面应该重定向到 http://example.com/edit_user.php,因为没有参数。

【问题讨论】:

  • /edit_user/ 是一个真实的目录吗?
  • edit_user 是文件,而不是目录。其edit_user.php文件位于服务器根目录

标签: apache .htaccess mod-rewrite url-rewriting


【解决方案1】:

在根 .htaccess 中有此代码:

RewriteEngine On

RewriteRule ^([\w-]+)/enc/([^/]+)/?$ $1.php?enc=$2 [L,QSA,NC]

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^([\w-]+)/?$ $1.php [L]

【讨论】:

  • 感谢 anubhava,像魅力一样工作!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多