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 634 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 10.06.2018 в 11:19, Japing сказал: P.S. Предложение для разработчиков DLE. В новой версии дайте хотя бы возможность редактировать файл /engine/classes/plugins.class.php через систему плагнинов. Расширить Тем самым разработчик убьёт это функционал: Цитата Ссылка на сообщение Поделиться на других сайтах
Japing 0 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 Автор 10.06.2018 в 11:47, Captain сказал: Тем самым разработчик убьёт это функционал: Расширить Моя ошибка. Если и будет возможность его редактировать через систему плагинов этo ничево не даст. Этот файл подключается напрямую, без систему плагинов. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 168 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 Вы пытаетесь нарушить принципы работы системы плагинов. Система плагинов это система работы через виртуальные файлы, любое удаление и приостановка плагина возвращает все в исходное состояние. А вы физически переписываете и редактируете оригинальный файл .htaccess. А теперь при удалении вашего плагина, что произойдет? ничего. Модифицированный файл останется. Это первое. Второе большинство правильно настроенных на безопасность хостингов, не дает прав на запись для этого файла, открытие его на запись вручную через CHMOD, это открытие дыры в безопасности в целом. Этот файл не может виртуальным априори, потому как его читает и выполняет не DLE, а Апач, еще до DLE. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
Japing 0 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 Автор 10.06.2018 в 12:14, celsoft сказал: любое удаление и приостановка плагина возвращает все в исходное состояние. Расширить после установки этого хака так и будет 10.06.2018 в 12:14, celsoft сказал: А теперь при удалении вашего плагина, что произойдет? ничего. Расширить это не писался как плагин, а как хак чтоб была возможность редактировать файл .htaccess через систему плагинов. 10.06.2018 в 12:14, celsoft сказал: Этот файл не может виртуальным априори, потому как его читает и выполняет не DLE, а Апач, еще до DLE. Расширить да, но DLE его использует в работе Ну тогда предлагайте вы какая то решение, например обработать ЧПУ через php. Не красиво получился, сделали систему плагинов но всё равно надо файлы вручную редактировать. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 168 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 10.06.2018 в 12:40, Japing сказал: после установки этого хака так и будет Расширить Нет не будет. Вы плохо тестировали. Если нет ниодного другого плагина который бы редактировал этот файл, то этот файл после единственного плагина который редактировал .htaccess не вернется в исходное состояние после удаления плагина, который его редактировал, потому как вы физически правите основной файл, и ничто в исходное состояние его не возвращает в вашем коде. 10.06.2018 в 12:40, Japing сказал: это не писался как плагин, а как хак чтоб была возможность редактировать файл .htaccess через систему плагинов. Расширить Простите, но этот хак работает неправильно и проблемный в вопросах безопасности, по своей сути, т.к. правит физически реальный файл. Я бы настоятельно никому не рекомендовал ставить этот хак. Я просто высказываю свое мнение, чтобы другие знали мнение разработчика. Ваш же я не переубеждаю, вы можете делать у себя все что угодно на сайте и редактировать как угодно. 10.06.2018 в 12:40, Japing сказал: Ну тогда предлагайте вы какая то решение, например обработать ЧПУ через php. Не красиво получился, сделали систему плагинов но всё равно надо файлы вручную редактировать. Расширить Мое мнение это никогда не трогать стандартные правила, и никогда их не менять. А свои правила вы можете обрабатывать и через PHP. Цитата Ссылка на сообщение Поделиться на других сайтах
Japing 0 Опубликовано: 10 июня 2018 Рассказать Опубликовано: 10 июня 2018 Автор 10.06.2018 в 14:00, celsoft сказал: Если нет ниодного другого плагина который бы редактировал этот файл, то этот файл после единственного плагина который редактировал .htaccess не вернется в исходное состояние после удаления плагина Расширить Вы правы. но это легко исправить. 10.06.2018 в 14:00, celsoft сказал: т.к. правит физически реальный файл Расширить вручную тоже реальный файл редактируется. Соглашусь с вами только с этим: 10.06.2018 в 12:14, celsoft сказал: Второе большинство правильно настроенных на безопасность хостингов, не дает прав на запись для этого файла, открытие его на запись вручную через CHMOD, это открытие дыры в безопасности в целом Расширить 10.06.2018 в 14:00, celsoft сказал: Мое мнение это никогда не трогать стандартные правила, и никогда их не менять. А свои правила вы можете обрабатывать и через PHP. Расширить стандартные правила да, а вот свои? не всё можно обработать через через PHP Цитата Ссылка на сообщение Поделиться на других сайтах
radrigo 198 Опубликовано: 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 168 Опубликовано: 3 октября 2018 Рассказать Опубликовано: 3 октября 2018 03.10.2018 в 14:08, yeahga сказал: Сделайте возможным редактировать js и css файлы через систему плагинов. По моему скромному субъективному мнению, это будет лучшим введением в новой версии. Расширить JS статические файлы которые загружает браузер с сервера напрямую, минуя DLE. Подключайте свои скрипты со своим функционалом, через ту же систему плагинов, а не правьте стандартный JS Цитата Ссылка на сообщение Поделиться на других сайтах
yeahga 6 Опубликовано: 3 октября 2018 Рассказать Опубликовано: 3 октября 2018 03.10.2018 в 17:50, celsoft сказал: JS статические файлы которые загружает браузер с сервера напрямую, минуя DLE. Расширить Да, но.. /engine/classes/min/index.php?f=engine/classes/js/dle_js.js Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 168 Опубликовано: 3 октября 2018 Рассказать Опубликовано: 3 октября 2018 03.10.2018 в 18:46, yeahga сказал: Да, но.. /engine/classes/min/index.php?f=engine/classes/js/dle_js.js Расширить Это сжатие и такая же прямая отдача, плюс далеко не все включают сжатие. Цитата Ссылка на сообщение Поделиться на других сайтах
yeahga 6 Опубликовано: 3 октября 2018 Рассказать Опубликовано: 3 октября 2018 03.10.2018 в 18:50, celsoft сказал: Это сжатие и такая же прямая отдача, плюс далеко не все включают сжатие. Расширить Я понимаю. Я имел в виду, что можно отдавать правленый js файл. Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 168 Опубликовано: 4 октября 2018 Рассказать Опубликовано: 4 октября 2018 03.10.2018 в 18:56, yeahga сказал: Я понимаю. Я имел в виду, что можно отдавать правленый js файл. Расширить В одном случае, если включена одна настройка, то отдавать, а если не включена, то не отдавать? Нет. Этого в DLE быть не может, как функция вводящая в заблуждение. Цитата Ссылка на сообщение Поделиться на других сайтах
yeahga 6 Опубликовано: 4 октября 2018 Рассказать Опубликовано: 4 октября 2018 04.10.2018 в 10:40, celsoft сказал: В одном случае, если включена одна настройка, то отдавать, а если не включена, то не отдавать? Расширить Та нет же. Отдавать правленый файл в любом случае. Можно просто патчить файл. Не вижу ни одной причины, мешающей реализовать это. А так получается недосистема плагинов, которая работает на 50% В чем смысл, когда из релиза в релиз приходится делать правки вручную? 04.10.2018 в 10:40, celsoft сказал: В одном случае, если включена одна настройка, то отдавать, а если не включена, то не отдавать? Расширить Вы серьезно, или решили поиздеваться? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 168 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 04.10.2018 в 15:42, yeahga сказал: Та нет же. Отдавать правленый файл в любом случае. Можно просто патчить файл. Не вижу ни одной причины, мешающей реализовать это. А так получается недосистема плагинов, которая работает на 50% В чем смысл, когда из релиза в релиз приходится делать правки вручную? Расширить Вы не понимаете сути системы плагинов. Плагины меняют PHP коды, т.е. влияют на скрипты самой CMS, а не на статические файлы. Это касается любой CMS. Своя статика отдается отдельными своими также статическими файлами. Нет ниодной необходимости править JS файлы, любое действие на JS можно отменить и заменить на свой без правки JS файлов. Нет ниодной необходимости править стандартные JS файлы. Если не у вас не достаточно знаний JS, то это не значит что вашу возможность нельзя сделать без правки этого файла. 04.10.2018 в 15:42, yeahga сказал: Вы серьезно, или решили поиздеваться? Расширить Серьезно. Если вы не знали, то этот путь что вы привели не всегда в DLE, а только при комбинации определенных настроек, когда их нет, статика идет в браузер напрямую минуя скрипты. Цитата Ссылка на сообщение Поделиться на других сайтах
Captain 634 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 Ленивые люди чушь пишут, не обращайте внимание. ИМХО. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
odys 384 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 05.10.2018 в 19:55, Captain сказал: Ленивые люди чушь пишут, не обращайте внимание. ИМХО. Расширить мне кажется тут дело даже не в лени, а в бональном «докопаться». Я уже тут почти неделю читаю «выпады» геймера и ему подобных, которые зацепились за слова разработчика о нежелании бесполезно нагружать движок системой типа роутинга на php и в тоже время введением новой системы рейтинга, что не может ставиться ни в какое сравнение по степени нагрузки на сервер. И ни как не могу понять зачем менять .htaccess? чем ссылка /?do=mymod отличается от /mymod/ ??? Как не крути, но ПС вообще параллельно какой адрес индексировать. Делал сайт для своей компании по онлайн бронированию авиабилетов, вся инфа по городам, странам, аэропортам в базе храниться независимо от dle и ни как с движком не связана, поэтому для вывода всего этого пришлось писать отдельные модули, в итоге от dle осталась только главная страница и страница обратной связи, ну и парочка статических страниц. В .htaccess не сделал не одной правки, всё через параметры и ни чего, всё отлично проиндексировалось и работает. Ну ум приходит только 2 вещи, перенаправление с http на https (которое уже сделали) и перенаправление с www на без или наоборот. Ну и опять же, если в настройках сайта прописать домен без www, то на страницах сайта везде прописана каноническая ссылка на то, как указано в настройках. Поэтому и тут осой необходимости делать перенаправление нет. Я разработчик средненький и могу чего-то не знать, если я ошибаюсь и не так написал, поправьте. Цитата Ссылка на сообщение Поделиться на других сайтах
Gameer 317 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 05.10.2018 в 20:41, odys сказал: мне кажется тут дело даже не в лени, а в бональном «докопаться». Я уже тут почти неделю читаю «выпады» геймера и ему подобных, которые зацепились за слова разработчика о нежелании бесполезно нагружать движок системой типа роутинга на php и в тоже время введением новой системы рейтинга, что не может ставиться ни в какое сравнение по степени нагрузки на сервер. И ни как не могу понять зачем менять .htaccess? чем ссылка /?do=mymod отличается от /mymod/ ??? Как не крути, но ПС вообще параллельно какой адрес индексировать. Делал сайт для своей компании по онлайн бронированию авиабилетов, вся инфа по городам, странам, аэропортам в базе храниться независимо от dle и ни как с движком не связана, поэтому для вывода всего этого пришлось писать отдельные модули, в итоге от dle осталась только главная страница и страница обратной связи, ну и парочка статических страниц. В .htaccess не сделал не одной правки, всё через параметры и ни чего, всё отлично проиндексировалось и работает. Ну ум приходит только 2 вещи, перенаправление с http на https (которое уже сделали) и перенаправление с www на без или наоборот. Ну и опять же, если в настройках сайта прописать домен без www, то на страницах сайта везде прописана каноническая ссылка на то, как указано в настройках. Поэтому и тут осой необходимости делать перенаправление нет. Я разработчик средненький и могу чего-то не знать, если я ошибаюсь и не так написал, поправьте. Расширить Хотелось бы послушать о нагрузке от роутинга. Цитата Ссылка на сообщение Поделиться на других сайтах
odys 384 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 05.10.2018 в 21:09, Gameer сказал: Хотелось бы послушать о нагрузке от роутинга. Расширить мне тоже. Это разработчик сказал, не я. Его в обратном, фактами, так не переубедили, только бесполезный флуд Цитата Ссылка на сообщение Поделиться на других сайтах
Gameer 317 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 05.10.2018 в 21:12, odys сказал: мне тоже. Это разработчик сказал, не я. Его в обратном, фактами, так не переубедили, только бесполезный флуд Расширить Если разработчик не видит в этом смысла то флаг ему в руки. Я настаивать и орать тут не собираюсь, его право. Так же как и нет офф поддержки nginx на сей день. Но вот самое забавное что ты написал 05.10.2018 в 20:41, odys сказал: которые зацепились за слова разработчика о нежелании бесполезно нагружать движок системой типа роутинга на php и в тоже время введением новой системы рейтинга, что не может ставиться ни в какое сравнение по степени нагрузки на сервер. Расширить В какое же? Насколько больше будет нагрузка? DLE не сможет больше запустить на 8Mb оперативной памяти? Придется брать сервер с 16Mb? 1 Цитата Ссылка на сообщение Поделиться на других сайтах
odys 384 Опубликовано: 5 октября 2018 Рассказать Опубликовано: 5 октября 2018 05.10.2018 в 21:16, Gameer сказал: В какое же? Насколько больше будет нагрузка? DLE не сможет больше запустить на 8Mb оперативной памяти? Придется брать сервер с 16Mb? Расширить ты уже из-за кучи своих сообщений в каждой теме забыл, что @celsoft писал, что нагрузка в рейтинге мизерная 05.10.2018 в 20:41, odys сказал: которые зацепились за слова разработчика Расширить Я просто процитировал, ещё раз повторюсь, это не мои слова, а разработчика. 1 Цитата Ссылка на сообщение Поделиться на других сайтах
yeahga 6 Опубликовано: 6 октября 2018 Рассказать Опубликовано: 6 октября 2018 05.10.2018 в 10:03, celsoft сказал: любое действие на JS можно отменить и заменить на свой без правки JS файлов Расширить Вы правы, пожалуй можно обойтись этим. 05.10.2018 в 10:03, celsoft сказал: Если не у вас не достаточно знаний JS, то это не значит что вашу возможность нельзя сделать без правки этого файла. Расширить Я не отрицал, что ее можно сделать без правки этого файла. Просто в некоторых случаях проще или правильнее сделать правку именно в этом файле. 05.10.2018 в 10:03, celsoft сказал: Если вы не знали, то этот путь что вы привели не всегда в DLE, а только при комбинации определенных настроек, когда их нет, статика идет в браузер напрямую минуя скрипты. Расширить Я знаю. Этот путь привёл лишь в качестве примера, в контексте того, что JS файлы не всегда минуют DLE. 03.10.2018 в 18:50, celsoft сказал: плюс далеко не все включают сжатие Расширить Я сам не включаю. ПС: прошу прощения за потраченное время. Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.