问题列表 - 第37667页

人类可读的URL:最好也是分层的?

在一个关于人类可读URL 的现在迁移的问题中,我允许自己详细描述我的一个爱好:

当我遇到像http://www.example.com/product/123/subpage/456.html我这样的URL时,我总是认为这是尝试创建有意义的分层URL,但这并不是完全分层的.我的意思是,你应该能够一次切掉一个级别.在上面,URL有两个违反此原则的违规行为:

  1. /product/123一个表示为两个级别的信息.它会被更正确地表示为/product:123(或者你喜欢的任何分隔符)
  2. /subpage很可能本身并不是一个实体(即,你不能去了一个从水平456.html作为http://www.example.com/product/123/subpage是"无").

因此,我发现以下更正确:

http://www.example.com/product:123/456.html
Run Code Online (Sandbox Code Playgroud)

在这里,您始终可以一次向上导航一个级别:

  • http://www.example.com/product:123/456.html - 子页面
  • http://www.example.com/product:123 - 产品页面
  • http://www.example.com/ - 根

遵循相同的理念,以下内容将有意义[并提供产品列表的附加链接]:

http://www.example.com/products/123/456.html
Run Code Online (Sandbox Code Playgroud)

哪里:

  • http://www.example.com/products/123/456.html - 子页面
  • http://www.example.com/products/123 - 产品页面
  • http://www.example.com/products - 产品清单
  • http://www.example.com/ - 根

我对这种方法的主要动机是,如果每个"路径元素"(由分隔符/)是自包含的1,您将始终能够通过简单地删除URL的最后一个元素来导航到"父".这是我(有时)在我想要转到父目录时在我的文件浏览器中执行的操作.遵循相同的逻辑线,用户(或搜索引擎/爬虫)也可以这样做.我觉得很聪明.

另一方面(这是问题的重要部分):虽然我永远无法防止用户试图访问他自己截断的URL,但我错误地断言(并且尊重)搜索引擎可能会做同样的事情?也就是说,期望没有搜索引擎(或者真的:Google)会尝试访问http://www.example.com/product/123/subpage(上面的第2点)是否合理?(或者我真的只考虑人为因素吗?)

这不是关于个人偏好的问题.这是关于我对爬虫/索引器的期望以及在设计URL时我应该考虑非人类URL操作的范围的技术问题.

此外,结构"深度" http://www.example.com/product/123/subpage/456.html是4,其中http://www.example.com/products/123/456.html只有3.有传言说这个深度影响搜索引擎排名.至少,所以我被告知.(现在很明显,搜索引擎优化并不是我最了解的.)这是(仍然?)真的:层次深度(目录数量)是否会影响搜索排名?

那么,我的"预感"在技术上是合理的还是我应该把时间花在其他事情上?


示例:这样做(差不多)正确的
好,所以这几乎是正确的.例证:个人资料,例如http://stackoverflow.com/users/52162:

  • http://stackoverflow.com/users/52162 - 单个档案 …

url seo hierarchical human-readable url-modification

6
推荐指数
1
解决办法
1185
查看次数

匿名计数与nhibernate标准?

是否有可能用nhibernate创建一个anoynmous计数?

以下查询引发异常"No column*".我当然可以添加一个列名,但我不愿意,因为如果我这样做,我将不得不查找95个表的列名...

NHibernate.Criterion.DetachedCriteria dcIsUniqueDomainname = NHibernate.Criterion.DetachedCriteria.For<nhDBapi.Tables.clsDomains>()
               .SetProjection(
                   NHibernate.Criterion.Projections.Count("*")
               )
               .Add(NHibernate.Criterion.Property.ForName("DomainID").Eq(strDomainID))
               .Add(NHibernate.Criterion.Property.ForName("DomainName").Eq(strDomainName)
           );
Run Code Online (Sandbox Code Playgroud)

sql nhibernate detachedcriteria nhibernate-criteria

0
推荐指数
1
解决办法
560
查看次数

不同语言的国名的好来源?(用于多语言形式)

我正在构建一个多语言Web应用程序,可以随时更改界面语言。这意味着,除其他外,注册/资料表格上的国家名称选择器也应翻译。

因此,我想知道网络上是否存在某种集中式资源,用于以所有或多种(或某些)语言显示国家名称。我只需要其中的三种,而且我知道最终我会自己将英语名称(可以在网上轻松找到)翻译成其他两种语言。可以,除非我的客户添加了我不会说的更多语言。当然,在名称之间应该有一些映射,例如通过2个字母的代码。

translation internationalization countries

5
推荐指数
1
解决办法
5949
查看次数

SQL - 在具有多个where子句的单个查询中检索值

我有一个包含以下数据的表:

UserName | LastLogin 
-------------------------------
User1    | 2010-10-25 10:05:47
User2    | 2010-10-23 11:10:27
User3    | 2010-10-12 05:39:34
User4    | 2010-10-20 12:22:11
User5    | 2010-09-17 08:41:05
Run Code Online (Sandbox Code Playgroud)

我希望能够运行查询以获取在过去3天,过去7天和过去21天内登录的人数(我知道这些数字会重叠).我知道我可以通过运行查询来获得每个特定值(语法可能不是100%正确):

SELECT COUNT(*) 
  FROM login 
 WHERE LastLogin >= DATEDIFF(NOW(), LastLogin, INTERVAL 3 DAY);
Run Code Online (Sandbox Code Playgroud)

我可以运行查询以在一个查询中返回所有三个值吗?GROUP BY是否可以工作,还是可以使用嵌套查询?使用指定的不同间隔运行查询三次是否同样有效?

mysql sql date-manipulation

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

使用jQuery将子文件夹添加到所有链接

我目前正在位于www.example.com/staging的临时环境中的某个站点上工作.该站点的所有链接都已相对设置(例如:/ about /).我正在尝试编写一些简单的jQuery来为页面上的每个链接添加"/ staging",因此我不必更改本周的所有链接,因此它在暂存环境中.我知道HTML标签是一个选项,但因为链接是使用ExpressionEngine动态添加的,似乎不起作用.我认为jQuery应该相当简单.这就是我所拥有的,但有些事情并不恰当:

$(function() {
  var href = $('a').attr('href');
  $(href).prepend('/staging');
});
Run Code Online (Sandbox Code Playgroud)

在此先感谢您的帮助.

jquery href hyperlink staging

3
推荐指数
1
解决办法
1792
查看次数

无法理解System Verilog中的错误

我试着编译代码

module counter(
    input clk,
    input upSignal,
    input downSignal,
    output [7:0] count
   );
        always_ff @(posedge clk) begin
          if (upSignal)
              count <= count + 1;
          else if (downSignal)
              count <= count - 1;
        end
    endmodule
Run Code Online (Sandbox Code Playgroud)

但我得到了错误

Error (10170): Verilog HDL syntax error at counter.v(7) near text "@"; expecting ".", or "("

这是什么意思?

verilog system-verilog

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

为什么php在替换双引号时插入反斜杠

我想知道为什么php在我删除双引号时添加反斜杠.

<input type="text" name="number" id="number" />
<input type="button" name="button" id="button" value="Button" />
Run Code Online (Sandbox Code Playgroud)

假设他们用户输入值5-1/2"并且我通过jquery的.get方法将其传递给处理页面.

$('#button').click(function(){

    $.get('determine.php?number='+$('#number').val(),function(data){
     $('#response').html(data);
    });

});
Run Code Online (Sandbox Code Playgroud)

这是我的处理页面.

determine.php

$number = $_GET['number'];

$number = str_replace(array('"', "'"), '', $number);

echo $number;

//echos 5-1/2\
Run Code Online (Sandbox Code Playgroud)

为什么反斜杠在那里?

javascript php jquery

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

如何检查有符号整数是否为负或位?

我是x86汇编语言的新手,我有一个保存在寄存器中的有符号整数eax,我想检查数字是负数还是正数.为此,我用bt指令检查第一位.

这是我做的:

bt eax,0
jnc isNegative
Run Code Online (Sandbox Code Playgroud)

bt第一位携带标志,我用来jnc检查进位标志是0还是1.如果是1,它应该是负数,并做负指令...但是,输出是不可预测的,有时我有一个积极的,它认为它是一个负数.难道我做错了什么?

编辑:我刚刚意识到它可能与endianess有关.它实际上是检查最后一位而不是第一位.让我试试吧bt,7

x86 assembly

10
推荐指数
2
解决办法
3万
查看次数

理解SQL中的JOIN的好方法或教程

我们知道在任何RDBMS中都有不同类型的JOIN,例如: - 左连接,外连接,内连接,左外连接等.我们的项目中总是使用JOIN来处理我们的许多业务逻辑.然而,很少有人完全理解或掌握这些JOIN.通常,对JOIN知之甚少的人往往会对复杂的查询感到困惑.我感兴趣的领域主要与SQL Server有关,因为我们几乎在所有项目中都使用它.

我已经阅读了一些关于JOIN的好文章,但大多数都倾向于混淆而不是说服.所以我想知道是否有任何好的方法/方法或任何好的教程,以便很好地掌握SQL中的JOIN.教程应该足够简单,以及帮助我​​们更好地掌握JOIN的基础知识.

提前致谢.

sql database sql-server join

3
推荐指数
1
解决办法
1613
查看次数

是否可以使用闭包编译器ADVANCED_OPTIMIZATIONS与jQuery?

我不断收到给定对象不存在函数(重命名)的错误.是否有发布或设置或其他东西使它工作?

javascript compiler-construction jquery google-closure google-closure-compiler

4
推荐指数
2
解决办法
4506
查看次数