标签: trailing-slash

我什么时候应该在我的网址中使用尾部斜杠?

应该何时在URL中使用尾部斜杠?例如 - 我的网址应该/about-us//about-us什么样的?

我完全了解SEO相关的问题 - 重复的内容和规范的事情; 我正在试图弄清楚在单独正确提供页面的上下文中应该使用哪一个.

例如,我的同事认为末尾的斜杠意味着它是一个"文件夹" - 一个"目录",所以这不是一个正确的风格.但我认为最终没有斜线 - 它也不太正确,因为它几乎看起来像一个文件夹,但它不是,它也不是普通文件,而是没有扩展名的文件名.

有没有正确的方法知道使用哪个?

url seo url-rewriting url-design trailing-slash

263
推荐指数
8
解决办法
14万
查看次数

返回不带斜杠的字符串

我有两个变量:

site1 = "www.somesite.com";  
site2 = "www.somesite.com/";  
Run Code Online (Sandbox Code Playgroud)

我想做这样的事情

function someFunction(site)
{
    // If the var has a trailing slash (like site2), 
    // remove it and return the site without the trailing slash
    return no_trailing_slash_url;
}
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?

javascript string trailing-slash

165
推荐指数
7
解决办法
10万
查看次数

为什么IIS 7.5会在文件夹上添加尾部斜杠?我们是否可以禁用礼貌重定向以删除尾部斜杠的URL重写规则?

IIS通过添加尾部斜杠对目录执行URL清理.从IIS 6中查看此旧文档: 当请求没有尾部斜杠的文件夹时,IIS会生成礼貌重定向

  1. 为什么?意图是否仍然相关?
  2. 任何安全隐患?
  3. 如何通过URL重写规则"RemoveTrailingSlashRule"禁用它以使其工作

在IIS 7.5下使用URL Rewrite 2添加规则时,该规则将不会应用于目录(使用IsDirectory)和文件夹(使用IsFolder).

请参阅此警告添加规则以附加或删除尾部斜杠符号: 请参阅此警告添加规则以附加或删除尾部斜杠符号

这将创建RemoveTrailingSlashRule1: 编辑入站规则RemoveTrailingSlashRule1

iis url-rewriting iis-7.5 trailing-slash

22
推荐指数
1
解决办法
7213
查看次数

从基本URI和相对路径创建新URI - 斜杠有何不同?

为什么斜杠在使用新URI(baseUri,relativePath)时有所不同?

此构造函数通过组合baseUri和relativeUri来创建一个Uri实例.

而且,如何将相对路径安全/一致地附加到URI?

var badBase = new Uri("http://amee/noTrailingSlash");
var goodBase = new Uri("http://amee/trailingSlash/");
var f = "relPath";
new Uri(badBase, f)     // BAD  -> http://amee/relPath
new Uri(goodBase, f)    // GOOD -> http://amee/trailingSlash/relPath
Run Code Online (Sandbox Code Playgroud)

即使初始URI没有尾部斜杠,所需的输出也是"好"的情况.

.net c# uri trailing-slash

19
推荐指数
2
解决办法
1万
查看次数

如何在Django Rest Framework SimpleRouter上设置尾部斜杠可选

文件说,你可以设置trailing_slash=False但你怎么能允许两个端点工作,有或没有结尾的斜线?

django trailing-slash django-rest-framework

19
推荐指数
4
解决办法
5278
查看次数

laravel trailing斜线重定向到localhost

当我试试这个

http://localhost/Testlaravel/public/users/login
Run Code Online (Sandbox Code Playgroud)

有用.但是,当我尝试

http://localhost/Testlaravel/public/users/login/ 
Run Code Online (Sandbox Code Playgroud)

它将我重定向到

http://localhost/users/login/
Run Code Online (Sandbox Code Playgroud)

知道为什么吗?

这是我的htaccess文件

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

php .htaccess mod-rewrite trailing-slash laravel

15
推荐指数
1
解决办法
8179
查看次数

在查询字符串之前的斜杠.不好的做法?

我有一个类似的URL www.example.com/store/,它通向商店页面

当用户点击折扣链接时,它会添加参数?discount=foo,因此我的链接如下所示:www.example.com/store/?discount=foo.

一切都很实用.但是在这种情况下在查询字符串之前使用正斜杠是不好的做法吗?

url query-parameters trailing-slash

12
推荐指数
1
解决办法
5037
查看次数

Laravel 8 在尾部斜杠上行为不端

使用带有斜杠的 API 时出现问题。

路线

Route::post('user/register','UserController@register');
Run Code Online (Sandbox Code Playgroud)

当我POST从邮递员/网站调用此路由时,它工作正常,但我从移动设备调用了此路由,并带有如下斜杠。

user/register/
Run Code Online (Sandbox Code Playgroud)

默认情况下,Laravel 删除尾部斜杠,但GET在我转储请求方法时发出请求。

$method = $_SERVER['REQUEST_METHOD'];
$json = json_encode(['response' => $method], true);

result  -> "{response : 'GET'}"
Run Code Online (Sandbox Code Playgroud)

而且我无法获取请求正文。

注意:我尝试了很多解决方案,但找不到任何解决方案,而且我无法从移动端删除或更新路由调用,因此我必须在服务器端处理它。

api .htaccess trailing-slash laravel laravel-8

11
推荐指数
1
解决办法
123
查看次数

添加尾随斜杠.htaccess

我试图获得以下效果(使用此本地文件http://localhost/[company_name]/[project_name]/.htaccess):

http://localhost/[company_name]/[project_name]/page-1 (adds slash)
http://localhost/[company_name]/[project_name]/page-1/ (does nothing)
http://localhost/[company_name]/[project_name]/page-1/subpage-1 (adds slash)
http://www.example.com/page-1 (adds slash)<br />
http://www.example.com/page-1/ (does nothing)
etc.
Run Code Online (Sandbox Code Playgroud)

我想要完成的是这个.htaccess不再需要路径http://localhost/[company_name]/[project_name]/了,这样我每次上传时都不需要编辑它.

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*[^/])$ /$1/ [L,R=301]
Run Code Online (Sandbox Code Playgroud)

我在这里找到了上面的代码:向URL添加Trailing Slash,但它只能动态使用HOST并丢弃路径.有人有解决方案来实现这种效果吗?

.htaccess mod-rewrite redirect slash trailing-slash

10
推荐指数
1
解决办法
4万
查看次数

在Rails路由中强制执行尾部斜杠

使用{:trailing_slash => true}可以很容易地在链接中添加尾部斜杠,但这并不能说明用户是否键入了非斜线网址.有没有办法通过路由器中的重定向强制执行尾部斜杠?

get "/:controller/:id" => redirect{|params| "/#{params[:controller]}/#{params[:id]}/" }
Run Code Online (Sandbox Code Playgroud)

以上导致循环循环.

为什么?

"./subclass"的相对链接

/parent/1
Run Code Online (Sandbox Code Playgroud)

与...大不相同

/parent/1/
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails relative-path rails-routing trailing-slash

10
推荐指数
1
解决办法
4128
查看次数