.htaccess重写问题,没有斜杠

内森·布朗

我已经搜索了一段时间,但找不到解决问题的方法,也许我不是在寻找正确的东西,但是无论如何,这就是正在发生的事情。

我的.htaccess文件中包含以下mod_rewrites。重写工作完美,但是如果我没有结尾的斜杠,那么它会在url中自动显示一个变量。请参阅下面的示例以清楚了解。

网址样本

如果输入http://website.com/test/,(请注意后跟斜杠),页面URL将保持不变,并完美加载内容!

但是,如果我忘记了斜杠,即:http://website.com/test,则页面URL将更改为http://website.com/test/?var1=test(现在请注意,我已经没有在后面加上斜杠了)内容仍然可以正确加载,并且一切运行正常,只是我的URL现在很“丑陋”。

希望我已阐明这一点,但是如果您有任何疑问,请随时提出。谢谢!

.htaccess代码

    Options +FollowSymLinks
    RewriteEngine On

    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

    RewriteRule ^([\w-]+)/([\w-]+)/([\w-]+)/([\w-]+)/([\w-]+)/?$ _client.php?var1=$1&var2=$2&var3=$3&var4=$4&var5=$5 [L]
    RewriteRule ^([\w-]+)/([\w-]+)/([\w-]+)/([\w-]+)/?$ _client.php?var1=$1&var2=$2&var3=$3&var4=$4 [L]
    RewriteRule ^([\w-]+)/([\w-]+)/([\w-]+)/?$ _client.php?var1=$1&var2=$2&var3=$3 [L]
    RewriteRule ^([\w-]+)/([\w-]+)/?$ _client.php?var1=$1&var2=$2 [L]
    RewriteRule ^([\w-]+)/?$ _client.php?var1=$1 [L]
阿努巴瓦

之所以发生这种情况,是因为mod_dir在您的mod_rewrite规则完成模块会添加一个斜杠使用如下规则来避免出现此问题:

DirectorySlash Off
Options +FollowSymLinks
RewriteEngine On

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=302,L]

# add a trailing slash to directories
RewriteCond %{DOCUMENT_ROOT}/$1 -d
RewriteRule ^(.*?[^/])$ %{REQUEST_URI}/ [L,R=302]

RewriteRule ^([\w-]+)/([\w-]+)/([\w-]+)/([\w-]+)/([\w-]+)/?$ _client.php?var1=$1&var2=$2&var3=$3&var4=$4&var5=$5 [L,QSA]
RewriteRule ^([\w-]+)/([\w-]+)/([\w-]+)/([\w-]+)/?$ _client.php?var1=$1&var2=$2&var3=$3&var4=$4 [L,QSA]
RewriteRule ^([\w-]+)/([\w-]+)/([\w-]+)/?$ _client.php?var1=$1&var2=$2&var3=$3 [L,QSA]
RewriteRule ^([\w-]+)/([\w-]+)/?$ _client.php?var1=$1&var2=$2 [L,QSA]
RewriteRule ^([\w-]+)/?$ _client.php?var1=$1 [L,QSA]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

.htaccess重写问题,没有斜杠

来自分类Dev

重写没有结尾斜杠htaccess的第一级子文件夹

来自分类Dev

htaccess 在没有 php 扩展的情况下访问的重写规则导致尾部斜杠错误

来自分类Dev

htaccess重写并保留斜杠

来自分类Dev

htaccess和子域重写的尾部斜杠问题

来自分类Dev

在现有的重写规则.htaccess中添加斜杠

来自分类Dev

htaccess重写带有多个正斜杠的URL

来自分类Dev

当变量内部有斜杠时,如何处理htaccess重写?

来自分类Dev

带有问号和反斜杠的htaccess网址重写

来自分类Dev

htaccess检测斜杠,目录中没有斜杠

来自分类Dev

htaccess重写删除尾部斜杠

来自分类Dev

.htaccess重写可选的尾部斜杠

来自分类Dev

htaccess重写删除尾部斜杠

来自分类Dev

.htaccess网址重写,但没有任何反应

来自分类Dev

htaccess 没有正确重写 url

来自分类Dev

htaccess尾部斜杠问题

来自分类Dev

.htaccess的网址重写问题

来自分类Dev

重写问题(htaccess)

来自分类Dev

mod重写htaccess问题

来自分类Dev

.htaccess重写冲突问题

来自分类Dev

使用.htaccess重写的问题

来自分类Dev

url重写htaccess问题

来自分类Dev

如果斜杠后没有任何内容,则htaccess重定向

来自分类Dev

htaccess重写以使用带斜杠的变量

来自分类Dev

htaccess不重写扩展名或斜杠

来自分类Dev

无法在htaccess中重写斜杠规则

来自分类Dev

htaccess重写规则的URL中包含斜杠

来自分类Dev

.htaccess SEF重写URL中带有句点(点)的问题

来自分类Dev

.htaccess文件中的重写代码是否有问题