Php 此url的Htaccess重写规则
我刚开始学习htaccess,我想从以下内容重写我当前的URL:Php 此url的Htaccess重写规则,php,.htaccess,url,rewrite,Php,.htaccess,Url,Rewrite,我刚开始学习htaccess,我想从以下内容重写我当前的URL: http://www.url.com/?location=script 致: 到目前为止,我已经成功地做到了这一点,但现在我希望有一个包含更多控制器的目录,这样我就可以有如下内容: http://www.url.com/script/method 结构:脚本目录-->method.php 目前,我的目录结构包括如下内容: http://www.url.com/script/method 资产-->客户端(目录): logi
http://www.url.com/?location=script
致:
到目前为止,我已经成功地做到了这一点,但现在我希望有一个包含更多控制器的目录,这样我就可以有如下内容:
http://www.url.com/script/method
结构:脚本目录-->method.php
目前,我的目录结构包括如下内容:
http://www.url.com/script/method
资产-->客户端(目录):
- login.php
- logout.php
- register.php
- something.php
url.com/client/login
url.com/client/logout
url.com/client/register
url.com/client/something
我的.htaccess:
<ifModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ index.php?location=$1 [L]
</ifModule>
例如,我的所有控制器都位于assets/controllers/ucp/login.php中。如何:
<ifModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} ^(/client/[a-zA-Z0-9_\-]+)$
RewriteRule ^[a-z]+ index.php?location=$2 [L]
</ifModule>
不回答你的问题,考虑写你的PHP。其他PHP程序员可能更愿意帮助你。我将在未来考虑你的建议。你从哪里得到<代码> 2美元<代码>?包含在资产/控制器目录中的每一个包含脚本,然后我还有另一个包含脚本的目录。例如:assets/controllers/error/traceback.php。使用您的代码创建url:http://.../error/traceback 它不起作用!。我还更改了/client/with/assets/controllers/error/@MikeRockett$2是正则表达式中的第二个匹配项“客户端”是第一个。@AndreiVlad如果您的代码是3级而不是1级,请为
$4
替换$2
。尝试它将我的htaccess解析为有效且有效。您能提供更多信息吗,比如:您遇到了什么错误?我在前面的评论中提供的URL告诉了你什么?
<ifModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} ^(/client/[a-zA-Z0-9_\-]+)$
RewriteRule ^[a-z]+ index.php?location=$2 [L]
</ifModule>
http://example.com/index.php?location=../drop_database.php