mod_rewrite на основе IP

Функция Generators () ничего не возвращает. Попробуйте

function generators() {
    var mix = document.getElementById("userInput").value;
    for (var i = 0; i < mix; i++) {
    if (document.getElementById("quoteChoice").value === '1') {
        return generatorOne();
    } else if (document.getElementById("quoteChoice").value === '2') {
        return generatorTwo();
    }
  }
}
13
задан rink.attendant.6 24 May 2017 в 23:12
поделиться

3 ответа

Вы можете использовать переменную REMOTE_ADDR в RewriteCond

RewriteCond %{REMOTE_ADDR} !^10\.0\.1\.1$
RewriteRule ^ /maintenance.html

Просто измените условие, чтобы оно соответствовало нужным IP-адресам, для более чем одного вы можете использовать ^ (ip1 | ip2 | ... | ipn) $.

О том, как отключить режим обслуживания без изменения файла .htaccess, я думаю, что это невозможно, если не написать программу, которая удаляла бы ее или иным образом изменяла ее, проще всего было бы ее переименовать.

18
ответ дан 1 December 2019 в 22:58
поделиться

Маленькое улучшение ответа Alexander, не необходимо использовать регулярное выражение для IP-адреса.

RewriteCond %{REMOTE_ADDR} !10.0.0.1
RewriteCond %{REQUEST_URI} !/maintenance.html$ [NC]
RewriteRule .* /maintenance.html [R=302,L]
0
ответ дан 1 December 2019 в 22:58
поделиться

вы можете включить это состояние и отключить его через некоторый интерфейс администратора, который может записывать в .htaccess (например, разрешения установлены на 755 или 777). он просто всегда находил .htaccess, вставлял эти две строки в начало и при отключении обслуживания удалял эти две строки, оставляя остальную часть файла нетронутой

0
ответ дан 1 December 2019 в 22:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: