Có thể - trong 2-3 bước ...
Tạo tập tin của bạn trong các khu công nghiệp để Deny. Nó có thể là tệp .php, tệp .txt, thậm chí tệp .csv.
Tạo tập lệnh .php (hoặc ngôn ngữ bạn chọn), mục đích là xuất tệp có tên ".htaccess".
Mỗi lần bạn cập nhật tệp IP của bạn thành Từ chối, chạy tập lệnh .php 2) và xuất một tệp .htaccess mới, cho từng Miền của bạn.
Nếu bạn có câu lệnh ngoài IP bị từ chối, hãy mã hóa chúng trong tập lệnh .php để xuất trước. Xem https://www.askapache.com/htaccess/
.php script quát có thể trông giống như:
$output = "statement1".PHP_EOL;
$output .= "statement2".PHP_EOL;
$output .= "statement3".PHP_EOL;
...
Sau đó, khi bạn đã sẵn sàng cho phần DENY:
$denyList = file_get_contents("the/list/of/IPs.txt"); // or .php etc.
$ArrayDenyList = explode(PHP_EOL,$denyList); // or your line ending character, if necessary
foreach($ArrayDenyList as $key =>$value) {
$output .= 'Deny from '.$value.PHP_EOL;
}
Sau đó ghi tệp: (bạn có thể có một cách tiêu chuẩn):
$handle = fopen(.htaccess,"w"); //complete path if in another domain
fwrite($handle,$output);
fclose($handle);
echo "Success - <p>";
Nếu bạn có nhiều hơn một tên miền, sau đó có một mảng của đường dẫn tên miền đó, và foreach rằng Array, và fwrite cho mỗi đường dẫn.
Nếu một số miền đã có yêu cầu .htaccess, hãy đặt nó vào tệp .txt có thể đọc được ... thực hiện một tệp_get_contents (trên đó), "output =", thêm đầu vào "Deny, then". = .. ." mỗi trong một 'foreach()' loop.
Dù sao ... bạn đã làm tất cả những điều này trước khi ... chỉ cần áp dụng từng kỹ thuật để kịch bản này.
một file .htaccess không thể "include()" các tệp khác, nhưng tập lệnh .php có thể và các tập lệnh .php có thể xuất các tệp có tên ".htaccess", có thể được tạo bằng tập lệnh.
Phương thức trên hoạt động và tôi bắt đầu thực hiện khi tôi cần để tạo các hàng của "RewriteRule" cho mỗi danh mục sản phẩm của tôi! Mỗi lần tôi thêm một sản phẩm mới, tôi chạy tập lệnh của mình để xuất ra một tệp .htaccess mới ... được xây dựng từ bảng các sản phẩm SQL của tôi. Tương tự như tập lệnh .php của tôi là "fwrite" của sitemap.xml của tôi.
(Tôi hy vọng không có dấu chấm câu .php hoặc "$" s bị lạc trong đánh máy này).
Sẽ chỉ có 1 '.htacess' cho một vị trí thư mục – diEcho
Vâng, tôi hiểu điều đó. Nhưng chúng ta có thể bao gồm bên ngoài như cách thực hiện của nó trong apache2.conf? .htaccess nói Bao gồm htaccessfiles/ – EPQRS