Попробуйте:
console.logCopy = console.log.bind(console);
console.log = function(data)
{
var currentDate = '[' + new Date().toUTCString() + '] ';
this.logCopy(currentDate, data);
};
Или, если вам нужна временная метка:
console.logCopy = console.log.bind(console);
console.log = function(data)
{
var timestamp = '[' + Date.now() + '] ';
this.logCopy(timestamp, data);
};
Для регистрации более чем одной вещи и хорошим способом (например, представление дерева объектов):
console.logCopy = console.log.bind(console);
console.log = function()
{
if (arguments.length)
{
var timestamp = '[' + Date.now() + '] ';
this.logCopy(timestamp, arguments);
}
};
Со строкой формата ( JSFiddle )
console.logCopy = console.log.bind(console);
console.log = function()
{
// Timestamp to prepend
var timestamp = new Date().toJSON();
if (arguments.length)
{
// True array copy so we can call .splice()
var args = Array.prototype.slice.call(arguments, 0);
// If there is a format string then... it must
// be a string
if (typeof arguments[0] === "string")
{
// Prepend timestamp to the (possibly format) string
args[0] = "%o: " + arguments[0];
// Insert the timestamp where it has to be
args.splice(1, 0, timestamp);
// Log the whole array
this.logCopy.apply(this, args);
}
else
{
// "Normal" log
this.logCopy(timestamp, args);
}
}
};
[1112]
Выходы с что:
PS: протестировано только в Chrome.
П.П.С .: Array.prototype.slice
здесь не идеален, поскольку она будет записана как массив объектов, а не как ряд объектов.
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^([^/]+)/$ $1.php
RewriteRule ^([^/]+)/([^/]+)/$ /$1/$2.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule (.*)$ /$1/ [R=301,L]
Прекрасно работает - спасибо за помощь, ребята.
Вы можете попробовать решить вопрос здесь . Хотя решение вопроса не актуально (пока ...), сам вопрос предоставляет набор правил перезаписи, которые вы можете использовать на своем собственном сайте.
Если вам нужны символы в URL-адресах, вы можете просто использовать ". *" вместо определенного A-Za-z0-9, но если вы ищете возможную косую черту в конце, вы можете использовать ". *?" вместо. Это стандартная функция регулярных выражений, позволяющая избежать "жадности" ". *".
Попробуйте следующее:
RewriteCond %{THE_REQUEST} ^GET\ /[^?\s]+\.php
RewriteRule (.*)\.php$ /$1/ [L,R=301]
RewriteRule (.*)/$ $1.php [L]
Первое правило перенаправляет запросы / foo / bar
.php
извне в / foo / bar
/
. И второе правило перезаписывает запросы / foo / bar
/
внутри в / foo / bar
.php
.
И чтобы заставить конечную косую черту, попробуйте это правило:
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule .*[^/]$ $0/ [L,R=301]
Это решение Gumbo отлично работает с файлами, но не работает с каталогами. Другими словами:
Для mysite.com/file1.php
он показывает mysite.com/file1/
, что отлично.
Тем не менее, это плохо работает для каталогов. Если я попытаюсь получить доступ к следующему каталогу (который содержит файл index.php внутри) mysite.com/dir1
, вместо отображения содержимого http: /mysite.com/dir1/index. php
и URL: mysite.com/dir1/
, он возвращает 404.
Моим решением было:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{THE_REQUEST} ^GET\ /[^?\s]+\.php
RewriteRule (.*)\.php$ /$1/ [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*)/$ $1.php [L]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule .*[^/]$ $0/ [L,R=301]
Другими словами, ничего не делать, если это каталог.
Надеюсь, что это поможет.
Еще одна проблема с исходным решением заключается в том, что CSS и изображения не загружаются, пока я не изменю путь к файлу css и к изображениям на абсолютный путь.
Есть ли другой способ решите эту проблему, а не изменяйте все пути во всех файлах на веб-сайте на абсолютные.
Большое спасибо.
В качестве пути вы можете добавить
на свои php-страницы.