小编use*_*217的帖子

mod_rewrite:删除尾部斜杠(只有一个!)

我将mod_rewrite/.htaccess用于漂亮的URL.

我正在使用这个条件/规则来消除尾部斜杠(或者更确切地说:通过301重定向重写到非尾部斜杠URL;我这样做是为了避免重复内容,因为我喜欢不带尾随斜杠的URL更好):

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{HTTP_HOST} !^\.localhost$ [NC]
RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]

到目前为止运作良好.唯一的缺点是:
它还将"多尾随斜杠"-URL转发非尾随斜杠网址.

示例:
http://example.tld/foo/bar//////转发到http://example.tld/foo/bar
我只想http://example.tld/foo/bar/转发到http://example.tld/foo/bar.

那么,如果它实际上只是一个斜杠,是否可以只消除尾部斜杠?

对不起,如果这是一个有点烦人或怪异的问题!

谢谢.

apache .htaccess mod-rewrite redirect rewrite

24
推荐指数
4
解决办法
3万
查看次数

用于创建多维数组的算法

我正在使用PHP,我需要一个看似简单的数组任务的帮助.

这是我的示例数组:

$arr = array(
    0  => NULL,
    1  => NULL,
    2  => NULL,
    3  => NULL,
    8  => '2',
    9  => '2',
    10 => '2',
    11 => '2',
    12 => '3',
    13 => '3',
    14 => '8',
    15 => '8',
    16 => '14',
    17 => '14',
    18 => '14'
);
Run Code Online (Sandbox Code Playgroud)

数组的键表示ID(唯一).
值是parentID,即父"节点"的ID.NULL表示没有parentID(即新数组的第一维).

现在,我需要创建一个新的多维数组,其父元素下包含所有子元素.(这可能听起来很混乱,抱歉我缺乏描述性能力.下面有一个例子,应该让事情更清楚)

以下是我的示例的新数组在"排序"函数或者您调用此函数之后的应用:

$arr = array(
 0 => array(),
 1 => array(),
 2 => array(
     8 => array(
        14 => array(
            16 …

php arrays sorting algorithm multidimensional-array

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

尾随斜杠:是或否?

我正在开发一个新项目,使用Apache的mod_rewrite和PHP来获取漂亮的URL.

这是我的网址的样子:
http://example.tld/foo/bar/1/etc

请注意,没有尾部斜杠(这是我在s 的href属性中写入的方式<a>).

但是,我也允许http://example.tld/foo/bar/1/etc/(尾随斜线).

这是不好的做法吗?我想知道,如果只允许一种方式或者如果我最好在我的所有链接中使用尾部斜杠,默认情况下是否会更好.

谢谢.

php apache url mod-rewrite uri

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

mod_rewrite:不能访问真实文件和目录

我对漂亮的URL使用mod_rewrite / .htaccess。我将所有请求转发到我的index.php,如下所示:

RewriteRule ^ /?([a-zA-Z0-9 /-] +)/?$ /index.php [NC,L]

然后index.php处理请求。

我还使用此条件/规则来消除斜杠(或使用301重定向将其重写为没有斜杠的URL;我这样做是为了避免重复的内容,因为我不喜欢斜杠更好):

RewriteCond%{HTTP_HOST}!^ \。localhost $ [NC]
RewriteRule ^(。+)/ $ http://%{HTTP_HOST} / $ 1 [R = 301,L]

这很好用,除了我现在尝试访问一个(真实)目录时遇到一个无限循环(重写规则删除了尾部斜杠,服务器再次添加了斜杠,...)。

我通过将DirectorySlash指令设置为来解决此问题Off

目录斜杠

我不知道这种解决方案有多好,我对此不太有信心。

无论如何,我想做的就是完全忽略“真实的”文件和目录,因为我不需要它们,并且无论如何,我只使用带有“虚拟”文件/目录的漂亮URL。这将使我也避免了DirectorySlash变通方法/破解。

这可能吗?

谢谢!

apache .htaccess mod-rewrite

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

PHP:简单的数组操作

我有这样的数组(仅一维):

$arr = array('one', 'two', 'three', 'foo', 'bar', 'etc');

现在我需要一个for()创建新数组的循环$arr,如下所示:

$newArr = array('one', 'onetwo', 'onetwothree', 'onetwothreefoo', 'onetwothreefoobar', 'onetwothreefoobaretc');

似乎很简单,但我无法弄清楚.

提前致谢!

php arrays loops for-loop

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

jQuery:在悬停时隐藏div,在点击时保持可见

我有几个position: absolute;"按钮" display:block; <a>和几个position: absolute;带文字的div.div被display:none;设置为默认值隐藏.

当你将鼠标悬停在一个按钮上时,它旁边的div(在代码中)应该出现(带有某种淡入/滚动效果),然后如果你将光标移离按钮,则再次淡出/向外滚动.

当您单击按钮时,它旁边的div应保持可见(即display:block;).如果你点击按钮或div本身(悬停在按钮上或div不应该改变任何东西),它应该只会再次消失.

我认为这很简单,但我无法让它发挥作用.

html javascript css jquery

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