Инструменты пользователя

Инструменты сайта


project:apache-nginx-config-generator

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
project:apache-nginx-config-generator [2010/02/19 11:42] arturproject:apache-nginx-config-generator [2017/03/23 21:59] (текущий) – внешнее изменение 127.0.0.1
Строка 14: Строка 14:
 домен3.ru</code> домен3.ru</code>
  
 +**conf.php** - Генератор конфигов на PHP:
 +<code php><?php
 +$domains = explode("\n", file_get_contents("domains.txt"));
 +
 +
 +$tmpl_apache='
 +<VirtualHost *:81>
 + ServerAdmin webmaster@localhost
 +
 + ServerName _host_
 + ServerAlias www._host_
 +
 + <IfModule mpm_itk_module>
 + AssignUserId admin www-data
 + </IfModule>
 +
 + DocumentRoot /home/admin/www/_host_/
 +
 + <Directory /home/admin/www/_host_>
 + Options Indexes FollowSymLinks All MultiViews 
 + AllowOverride All
 + </Directory>
 +
 + ErrorLog  /home/admin/logs/_host_-error_log
 +
 +</VirtualHost>
 +';
 +
 +
 +$tmpl_nginx = '
 +
 + server {
 + listen 80;
 + server_name  ##domain## ##domain_aliases##;
 +
 + location /block.png
 + {
 +     gzip off;
 +     default_type image/png;
 +     root /home/##user##/www/##domain##;
 + }
 +
 +
 +
 + location ~* ^.+\.(swf|xml|jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|wav|bmp|rtf|js|ods|arj|htc|avi|mpg|mp3|mid)$ {
 +            valid_referers none blocked server_names ~\.google\. images.yandex.ru;
 +     if ($invalid_referer) 
 +     {
 + return 404;
 + #rewrite /(.*)\.(gif|jpg|jpeg|png)$ / break;
 + #rewrite ^(.*)$ /block.png break;
 +     }
 +     
 +     root    /home/##user##/www/##domain##;
 +     
 +
 + location ~ \.flv$ { 
 + root        /home/##user##/www/##domain##;
 + flv;
 + }
 +
 +
 + location / {
 + proxy_pass          http://127.0.0.1:81;
 + proxy_set_header    X-Real-IP  $remote_addr;
 + proxy_set_header    X-Forwarded-For  $proxy_add_x_forwarded_for;
 + proxy_set_header    X-Accel-Internal /internal_xxx;
 + proxy_set_header    Host $http_host;
 + proxy_redirect  http://##domain##:81/  /;
 + }
 +
 + location ~ /\.htp { deny  all; }
 + location ~ /\.hta { deny  all; }
 + location ~ /\.svn { deny  all; }
 + location /stub_status { stub_status on; access_log off;}
 + }
 +
 +';
 +
 +foreach($domains as $d)
 +{
 + if(strlen($d)>3)
 + {
 + $d = strtolower(trim($d));
 + $path = "/home/admin/www/".$d."/";
 + if(!file_exists($path))mkdir($path, 0755);
 +
 +
 + $domain_aliases = "www.".$d;
 + $user="admin";
 + //##domain## ##domain_aliases##
 + $s = str_replace("_host_",$d,$tmpl_apache);
 + $n = str_replace("##user##",$user,$tmpl_nginx);
 + $n = str_replace("##domain##",$d,$n);
 + $n = str_replace("##domain_aliases##",$domain_aliases,$n);
 +
 + //echo $s;
 + $app_conf.=$s;
 + $nginx_conf.=$n;
 + }
 +}
 +
 +echo file_put_contents("../apache_sites.conf", $app_conf);
 +echo file_put_contents("../nginx_sites.conf", $nginx_conf);
 +echo "ok";</code>
project/apache-nginx-config-generator.1266568936.txt.gz · Последнее изменение: 2017/03/23 21:57 (внешнее изменение)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki