通过shell脚本从mysql创建vhost文件

时间:2015-06-13 10:56:53

标签: mysql shell apache2 ubuntu-14.04

我想使用数据库中的脚本创建配置。配置存储为:



<VirtualHost *:80>
  ServerName example.com
  ProxyRequests Off
  ProxyPreserveHost On
  <Proxy *>
    Require all granted
  </Proxy>
  ProxyPass / http://10.20.30.50:81/ retry=1 timeout=30
  ProxyPassReverse / http://10.20.30.50:81/
  <Location />
    Require all granted
  </Location>
</VirtualHost>
&#13;
&#13;
&#13;

Apache给出了以下错误消息:

  

apache2:/etc/apache2/apache2.conf第219行的语法错误:/etc/apache2/sites-enabled/example.com.conf的第1行语法错误:/ etc / apache2 / sites-enabled / example.com.conf:1:没有关闭。

我的脚本看起来像:

&#13;
&#13;
sql="SELECT domain, vhost from v_create_proxy_vhost where domain = 'example.com'"

while read vhost
do
        echo "${vhost}"
        printf "${vhost}" > "$vhostconfavailable/$domain.conf"

done < <(echo "$sql" |mysql -h $dbHost -u $dbUser -p$dbPassword --skip-column-names -s)
&#13;
&#13;
&#13;

如何阅读并将其另存为配置文件?阿帕奇 我一直在使用Ubuntu 04.14,MySQL和Apache2。

1 个答案:

答案 0 :(得分:0)

  • 错误上的行号(219)表示您尝试附加现有的apache conf文件,在这种情况下,我可以通过查看整个conf文件来更好地提供服务 - 这是可能在某处指出一个未闭合的指令标记

    或者

  • 而不是附加现有的conf文件来设置vhosts,如何为每个vhost设置单独的conf文件,从而降低修改任何现有vhost指令的风险?