Japing 0 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 1. Открыть файл /engine/inc/plugins.php. Перед: if(!$file_name) continue; Добавить: if($value == ".htaccess" OR $value == "/.htaccess") $file_name = ".htaccess"; 2. Открыть файл /engine/classes/plugins.class.php. Перед: $content = file_get_contents( self::$root.$filename ); Добавить: if($filename == ".htaccess") { $content = file_get_contents( self::$root."engine/inc/include/htaccess.txt" ); } else Перед: @file_put_contents (ENGINE_DIR . "/cache/system/plugins/" . $store_key, $content, LOCK_EX); Добавить: if($filename == ".htaccess") { $content = "# This is a temporary file, its editing is pointless. The original file is: engine/inc/include/htaccess.txt\n\n" . $content; @file_put_contents (self::$root.$filename, $content, LOCK_EX); } 3. Берём файл .htaccess из оригинального дистрибутива DLE, переименуем в htaccess.txt и копируем его в /engine/inc/include/. Теперь все изменения в файле .htaccess выполняются через систему плагнинов. P.S. Предложение для разработчиков DLE. В новой версии дайте хотя бы возможность редактировать файл /engine/classes/plugins.class.php через систему плагнинов. Цитата Ссылка на сообщение Поделиться на других сайтах
Captain 623 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 20 минут назад, Japing сказал: P.S. Предложение для разработчиков DLE. В новой версии дайте хотя бы возможность редактировать файл /engine/classes/plugins.class.php через систему плагнинов. Тем самым разработчик убьёт это функционал: Цитата Ссылка на сообщение Поделиться на других сайтах
Japing 0 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 Автор 16 минут назад, Captain сказал: Тем самым разработчик убьёт это функционал: Моя ошибка. Если и будет возможность его редактировать через систему плагинов этo ничево не даст. Этот файл подключается напрямую, без систему плагинов. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 076 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 Вы пытаетесь нарушить принципы работы системы плагинов. Система плагинов это система работы через виртуальные файлы, любое удаление и приостановка плагина возвращает все в исходное состояние. А вы физически переписываете и редактируете оригинальный файл .htaccess. А теперь при удалении вашего плагина, что произойдет? ничего. Модифицированный файл останется. Это первое. Второе большинство правильно настроенных на безопасность хостингов, не дает прав на запись для этого файла, открытие его на запись вручную через CHMOD, это открытие дыры в безопасности в целом. Этот файл не может виртуальным априори, потому как его читает и выполняет не DLE, а Апач, еще до DLE. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Japing 0 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 Автор 9 минут назад, celsoft сказал: любое удаление и приостановка плагина возвращает все в исходное состояние. после установки этого хака так и будет 13 минут назад, celsoft сказал: А теперь при удалении вашего плагина, что произойдет? ничего. это не писался как плагин, а как хак чтоб была возможность редактировать файл .htaccess через систему плагинов. 24 минуты назад, celsoft сказал: Этот файл не может виртуальным априори, потому как его читает и выполняет не DLE, а Апач, еще до DLE. да, но DLE его использует в работе Ну тогда предлагайте вы какая то решение, например обработать ЧПУ через php. Не красиво получился, сделали систему плагинов но всё равно надо файлы вручную редактировать. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 076 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 1 час назад, Japing сказал: после установки этого хака так и будет Нет не будет. Вы плохо тестировали. Если нет ниодного другого плагина который бы редактировал этот файл, то этот файл после единственного плагина который редактировал .htaccess не вернется в исходное состояние после удаления плагина, который его редактировал, потому как вы физически правите основной файл, и ничто в исходное состояние его не возвращает в вашем коде. 1 час назад, Japing сказал: это не писался как плагин, а как хак чтоб была возможность редактировать файл .htaccess через систему плагинов. Простите, но этот хак работает неправильно и проблемный в вопросах безопасности, по своей сути, т.к. правит физически реальный файл. Я бы настоятельно никому не рекомендовал ставить этот хак. Я просто высказываю свое мнение, чтобы другие знали мнение разработчика. Ваш же я не переубеждаю, вы можете делать у себя все что угодно на сайте и редактировать как угодно. 1 час назад, Japing сказал: Ну тогда предлагайте вы какая то решение, например обработать ЧПУ через php. Не красиво получился, сделали систему плагинов но всё равно надо файлы вручную редактировать. Мое мнение это никогда не трогать стандартные правила, и никогда их не менять. А свои правила вы можете обрабатывать и через PHP. Цитата Ссылка на сообщение Поделиться на других сайтах
Japing 0 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 Автор 1 час назад, celsoft сказал: Если нет ниодного другого плагина который бы редактировал этот файл, то этот файл после единственного плагина который редактировал .htaccess не вернется в исходное состояние после удаления плагина Вы правы. но это легко исправить. 1 час назад, celsoft сказал: т.к. правит физически реальный файл вручную тоже реальный файл редактируется. Соглашусь с вами только с этим: 3 часа назад, celsoft сказал: Второе большинство правильно настроенных на безопасность хостингов, не дает прав на запись для этого файла, открытие его на запись вручную через CHMOD, это открытие дыры в безопасности в целом 1 час назад, celsoft сказал: Мое мнение это никогда не трогать стандартные правила, и никогда их не менять. А свои правила вы можете обрабатывать и через PHP. стандартные правила да, а вот свои? не всё можно обработать через через PHP Цитата Ссылка на сообщение Поделиться на других сайтах
radrigo 180 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 Не знаю, насколько было бы правильно если бы система ЧПУ обрабатывалась через PHP, но это однозначно было бы удобнее для установки некоторых плагинов, требующих правки в .htaccess Цитата Ссылка на сообщение Поделиться на других сайтах
yeahga 6 Опубликовано: 3 октября 2018 Рассказать Опубликовано: 3 октября 2018 Не знаю, почему все зациклились на одном лишь .htaccess? Неужели, никто не делает правки, например, в файле engine/classes/js/dle_js.js ? В моем случае, для реализации select[multiple] приходится менять $.each($("#ajaxnews"+a).serializeArray(),function(a,c){b[c.name]=c.value}) на $.each($("#ajaxnews"+a+" :input"),function(){b[$(this).attr("name")]=$(this).val()||''}) Сделайте возможным редактировать js и css файлы через систему плагинов. По моему скромному субъективному мнению, это будет лучшим введением в новой версии. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 076 Опубликовано: 3 октября 2018 Рассказать Опубликовано: 3 октября 2018 3 часа назад, yeahga сказал: Сделайте возможным редактировать js и css файлы через систему плагинов. По моему скромному субъективному мнению, это будет лучшим введением в новой версии. JS статические файлы которые загружает браузер с сервера напрямую, минуя DLE. Подключайте свои скрипты со своим функционалом, через ту же систему плагинов, а не правьте стандартный JS Цитата Ссылка на сообщение Поделиться на других сайтах
yeahga 6 Опубликовано: 3 октября 2018 Рассказать Опубликовано: 3 октября 2018 53 минуты назад, celsoft сказал: JS статические файлы которые загружает браузер с сервера напрямую, минуя DLE. Да, но.. /engine/classes/min/index.php?f=engine/classes/js/dle_js.js Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 076 Опубликовано: 3 октября 2018 Рассказать Опубликовано: 3 октября 2018 4 минуты назад, yeahga сказал: Да, но.. /engine/classes/min/index.php?f=engine/classes/js/dle_js.js Это сжатие и такая же прямая отдача, плюс далеко не все включают сжатие. Цитата Ссылка на сообщение Поделиться на других сайтах
yeahga 6 Опубликовано: 3 октября 2018 Рассказать Опубликовано: 3 октября 2018 4 минуты назад, celsoft сказал: Это сжатие и такая же прямая отдача, плюс далеко не все включают сжатие. Я понимаю. Я имел в виду, что можно отдавать правленый js файл. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 076 Опубликовано: 4 октября 2018 Рассказать Опубликовано: 4 октября 2018 15 часов назад, yeahga сказал: Я понимаю. Я имел в виду, что можно отдавать правленый js файл. В одном случае, если включена одна настройка, то отдавать, а если не включена, то не отдавать? Нет. Этого в DLE быть не может, как функция вводящая в заблуждение. Цитата Ссылка на сообщение Поделиться на других сайтах
yeahga 6 Опубликовано: 4 октября 2018 Рассказать Опубликовано: 4 октября 2018 4 часа назад, celsoft сказал: В одном случае, если включена одна настройка, то отдавать, а если не включена, то не отдавать? Та нет же. Отдавать правленый файл в любом случае. Можно просто патчить файл. Не вижу ни одной причины, мешающей реализовать это. А так получается недосистема плагинов, которая работает на 50% В чем смысл, когда из релиза в релиз приходится делать правки вручную? 5 часов назад, celsoft сказал: В одном случае, если включена одна настройка, то отдавать, а если не включена, то не отдавать? Вы серьезно, или решили поиздеваться? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 076 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 18 часов назад, yeahga сказал: Та нет же. Отдавать правленый файл в любом случае. Можно просто патчить файл. Не вижу ни одной причины, мешающей реализовать это. А так получается недосистема плагинов, которая работает на 50% В чем смысл, когда из релиза в релиз приходится делать правки вручную? Вы не понимаете сути системы плагинов. Плагины меняют PHP коды, т.е. влияют на скрипты самой CMS, а не на статические файлы. Это касается любой CMS. Своя статика отдается отдельными своими также статическими файлами. Нет ниодной необходимости править JS файлы, любое действие на JS можно отменить и заменить на свой без правки JS файлов. Нет ниодной необходимости править стандартные JS файлы. Если не у вас не достаточно знаний JS, то это не значит что вашу возможность нельзя сделать без правки этого файла. 18 часов назад, yeahga сказал: Вы серьезно, или решили поиздеваться? Серьезно. Если вы не знали, то этот путь что вы привели не всегда в DLE, а только при комбинации определенных настроек, когда их нет, статика идет в браузер напрямую минуя скрипты. Цитата Ссылка на сообщение Поделиться на других сайтах
Captain 623 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 Ленивые люди чушь пишут, не обращайте внимание. ИМХО. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
odys 384 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 24 минуты назад, Captain сказал: Ленивые люди чушь пишут, не обращайте внимание. ИМХО. мне кажется тут дело даже не в лени, а в бональном «докопаться». Я уже тут почти неделю читаю «выпады» геймера и ему подобных, которые зацепились за слова разработчика о нежелании бесполезно нагружать движок системой типа роутинга на php и в тоже время введением новой системы рейтинга, что не может ставиться ни в какое сравнение по степени нагрузки на сервер. И ни как не могу понять зачем менять .htaccess? чем ссылка /?do=mymod отличается от /mymod/ ??? Как не крути, но ПС вообще параллельно какой адрес индексировать. Делал сайт для своей компании по онлайн бронированию авиабилетов, вся инфа по городам, странам, аэропортам в базе храниться независимо от dle и ни как с движком не связана, поэтому для вывода всего этого пришлось писать отдельные модули, в итоге от dle осталась только главная страница и страница обратной связи, ну и парочка статических страниц. В .htaccess не сделал не одной правки, всё через параметры и ни чего, всё отлично проиндексировалось и работает. Ну ум приходит только 2 вещи, перенаправление с http на https (которое уже сделали) и перенаправление с www на без или наоборот. Ну и опять же, если в настройках сайта прописать домен без www, то на страницах сайта везде прописана каноническая ссылка на то, как указано в настройках. Поэтому и тут осой необходимости делать перенаправление нет. Я разработчик средненький и могу чего-то не знать, если я ошибаюсь и не так написал, поправьте. Цитата Ссылка на сообщение Поделиться на других сайтах
Gameer 310 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 27 минут назад, odys сказал: мне кажется тут дело даже не в лени, а в бональном «докопаться». Я уже тут почти неделю читаю «выпады» геймера и ему подобных, которые зацепились за слова разработчика о нежелании бесполезно нагружать движок системой типа роутинга на php и в тоже время введением новой системы рейтинга, что не может ставиться ни в какое сравнение по степени нагрузки на сервер. И ни как не могу понять зачем менять .htaccess? чем ссылка /?do=mymod отличается от /mymod/ ??? Как не крути, но ПС вообще параллельно какой адрес индексировать. Делал сайт для своей компании по онлайн бронированию авиабилетов, вся инфа по городам, странам, аэропортам в базе храниться независимо от dle и ни как с движком не связана, поэтому для вывода всего этого пришлось писать отдельные модули, в итоге от dle осталась только главная страница и страница обратной связи, ну и парочка статических страниц. В .htaccess не сделал не одной правки, всё через параметры и ни чего, всё отлично проиндексировалось и работает. Ну ум приходит только 2 вещи, перенаправление с http на https (которое уже сделали) и перенаправление с www на без или наоборот. Ну и опять же, если в настройках сайта прописать домен без www, то на страницах сайта везде прописана каноническая ссылка на то, как указано в настройках. Поэтому и тут осой необходимости делать перенаправление нет. Я разработчик средненький и могу чего-то не знать, если я ошибаюсь и не так написал, поправьте. Хотелось бы послушать о нагрузке от роутинга. Цитата Ссылка на сообщение Поделиться на других сайтах
odys 384 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 2 минуты назад, Gameer сказал: Хотелось бы послушать о нагрузке от роутинга. мне тоже. Это разработчик сказал, не я. Его в обратном, фактами, так не переубедили, только бесполезный флуд Цитата Ссылка на сообщение Поделиться на других сайтах
Gameer 310 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 1 минуту назад, odys сказал: мне тоже. Это разработчик сказал, не я. Его в обратном, фактами, так не переубедили, только бесполезный флуд Если разработчик не видит в этом смысла то флаг ему в руки. Я настаивать и орать тут не собираюсь, его право. Так же как и нет офф поддержки nginx на сей день. Но вот самое забавное что ты написал 35 минут назад, odys сказал: которые зацепились за слова разработчика о нежелании бесполезно нагружать движок системой типа роутинга на php и в тоже время введением новой системы рейтинга, что не может ставиться ни в какое сравнение по степени нагрузки на сервер. В какое же? Насколько больше будет нагрузка? DLE не сможет больше запустить на 8Mb оперативной памяти? Придется брать сервер с 16Mb? 1 Цитата Ссылка на сообщение Поделиться на других сайтах
odys 384 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 2 минуты назад, Gameer сказал: В какое же? Насколько больше будет нагрузка? DLE не сможет больше запустить на 8Mb оперативной памяти? Придется брать сервер с 16Mb? ты уже из-за кучи своих сообщений в каждой теме забыл, что @celsoft писал, что нагрузка в рейтинге мизерная 39 минут назад, odys сказал: которые зацепились за слова разработчика Я просто процитировал, ещё раз повторюсь, это не мои слова, а разработчика. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
yeahga 6 Опубликовано: 6 октября 2018 Рассказать Опубликовано: 6 октября 2018 В 05.10.2018 в 13:03, celsoft сказал: любое действие на JS можно отменить и заменить на свой без правки JS файлов Вы правы, пожалуй можно обойтись этим. В 05.10.2018 в 13:03, celsoft сказал: Если не у вас не достаточно знаний JS, то это не значит что вашу возможность нельзя сделать без правки этого файла. Я не отрицал, что ее можно сделать без правки этого файла. Просто в некоторых случаях проще или правильнее сделать правку именно в этом файле. В 05.10.2018 в 13:03, celsoft сказал: Если вы не знали, то этот путь что вы привели не всегда в DLE, а только при комбинации определенных настроек, когда их нет, статика идет в браузер напрямую минуя скрипты. Я знаю. Этот путь привёл лишь в качестве примера, в контексте того, что JS файлы не всегда минуют DLE. В 03.10.2018 в 21:50, celsoft сказал: плюс далеко не все включают сжатие Я сам не включаю. ПС: прошу прощения за потраченное время. Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.