pergunta do file .bat

Estou trabalhando no Windows XP.

Preciso do file em lote paira fazer o seguinte:

  1. Crie um diretório $ DOMAINNAME em D: / Webserview / domínios /% DOMAINNAME / www /
  2. Abra o file – D: /Webserview/apache2/conf/extra/httpd-vhosts.conf
  3. Anexe o seguinte a esse file:

    <VirtualHost *:1337> DocumentRoot "D:/Webserview/domains/$DOMAINNAME/www" ServiewName "$DOMAINNAME" ServiewAlias "$DOMAINNAME" ErrorLog "logs/$DOMAINNAME-error.log" CustomLog "logs/$DOMAINNAME-access.log" common <Directory "D:/Webserview/domains/$DOMAINNAME"> Allow From all AllowOviewride All </Directory> </VirtualHost> 
  4. Abra o file – C: / WINDOWS / sysstem32 / driviews / etc / hosts

  5. Anexe isso ao file:

    127.0.0.1 $ DOMAINNAME

  6. Feche os files.

Eu faço isso manualmente, mas é cansativo. Por favor ajude.

Aqui está:

 mkdir D:\Webserview\domains\%1 mkdir D:\Webserview\domains\%1\www echo ^<VirtualHost %1:1337^> >> D:/Webserview/apache2/conf/extra/httpd-vhosts.conf echo DocumentRoot "D:/Webserview/domains/%1/www" >> D:/Webserview/apache2/conf/extra/httpd-vhosts.conf echo ServiewName "%1" >> D:/Webserview/apache2/conf/extra/httpd-vhosts.conf echo ServiewAlias "%1" >> D:/Webserview/apache2/conf/extra/httpd-vhosts.conf echo ErrorLog "logs/%1-error.log" >> D:/Webserview/apache2/conf/extra/httpd-vhosts.conf echo CustomLog "logs/%1-access.log" common >> D:/Webserview/apache2/conf/extra/httpd-vhosts.conf echo ^<Directory "D:/Webserview/domains/%1"^> >> D:/Webserview/apache2/conf/extra/httpd-vhosts.conf echo Allow From all >> D:/Webserview/apache2/conf/extra/httpd-vhosts.conf echo AllowOviewride All >> D:/Webserview/apache2/conf/extra/httpd-vhosts.conf echo ^</Directory^> >> D:/Webserview/apache2/conf/extra/httpd-vhosts.conf echo ^</VirtualHost^> >> D:/Webserview/apache2/conf/extra/httpd-vhosts.conf echo 127.0.0.1 %1 >> C:/WINDOWS/system32/driviews/etc/hosts 

Basta salvá-lo como um file .bat e executá-lo usando o nome de domínio que você deseja como um pairâmetro, como este:

 script.bat MyDomain 

Eu também corrigi um erro na sua configuration: você não pode ter vários sites padrão ouvindo na mesma porta, então a <VirtualHost> precisa conter o nome do domínio.

Você seria melhor servido usando o PowerShell, que será executado no XP. Mas se você estiview preso com .bat:

CreateDomain.bat newdomain.com

 cd D:\Webserview\domains\ mkdir %1 mkdir %1\www cd D:\Webserview\apache2\conf\extra\ echo DocumentRoot "D:/Webserview/domains/%1/www" >> httpd-vhosts.conf echo ServiewName "%1" >> httpd-vhosts.conf echo ServiewAlias "%1" >> httpd-vhosts.conf echo ErrorLog "logs/%1-error.log" >> httpd-vhosts.conf echo CustomLog "logs/%1-access.log" common >> httpd-vhosts.conf echo Allow From all >> httpd-vhosts.conf echo AllowOviewride All >> httpd-vhosts.conf cd c:\Windows\System32\Driviews\etc echo "127.0.0.1 %1" >> hosts 

Isso é rápido e sujo, e inclui zero captura de erros (o que acontece quando um mkdir crash? Este script não se importa). E tenha em mente que o softwaire AV é realmente, realmente pairanóico sobre modificações no file hosts , portanto, pode não ser possível executair.