我目前正在开展一个项目,我必须在网址中传递三个参数。我的网址看起来像 -
本地主机/ newproject / index.php的FILE_NAME =客户&安培;模式=编辑和ID = 1
下面列出了传递不同参数时执行的功能
1)网址 - localhost / newproject / index.php?file_name = clients
功能 - 包含文件templates / modules / clients / clients.php
2)网址 - localhost / newproject / index.php?file_name = clients& mode = edit
功能 - 包含文件模板/ modules / clients / cliemts-edit.php。客户端编辑屏幕将用于添加新客户端,因为未设置客户端ID。
3)网址 - localhost / newproject / index.php?file_name = clients& mode = edit& id = 1
功能 - 包含文件模板/ modules / clients / cliemts-edit.php。客户端编辑屏幕将用于更新client_id为1的客户端。现在,我正在尝试将此URL转换为此
本地主机/ newproject /客户端/编辑/ 1
我的htaccess
中有以下代码RewriteRule ^([^/]*)/([^/]*)/([^/]*)$ index.php?file_name=$1&mode=$2&id=$3 [L]
RewriteRule ^([^/\.]+)$ index.php?file_name=$1 [L]
我面临的问题是,每当包含客户端编辑屏幕时,css文件,javascript文件和图像的路径都会发生变化。我怎么能克服这个?
答案 0 :(得分:0)
你走在正确的轨道上。
尝试:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/([^/]*)/([^/]*)$ index.php?file_name=$1&mode=$2&id=$3 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/([^/]*)$ index.php?file_name=$1&mode=$2 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)$ index.php?file_name=$1 [L]
为了修复css / scripts,您需要创建链接绝对URL(它们以/
开头)或在页面标题中包含相对URI基础:
<base href="/" />