ReplaceStringInFile() public static method

public static ReplaceStringInFile ( string filename, string search, string replace ) : void
filename string
search string
replace string
return void
コード例 #1
0
        public static void CreateVhost(string domain, string sitepath, bool auto = false)
        {
            var vhostFile = ApacheVhostDir + @"\" + domain + @".conf";

            if (auto)
            {
                vhostFile = ApacheVhostDir + @"\auto." + domain + @".conf";
            }

            var docroot = sitepath;

            if (Directory.Exists(sitepath + @"\public"))
            {
                docroot = sitepath + @"\public";
            }
            else if (Directory.Exists(sitepath + @"\www"))
            {
                docroot = sitepath + @"\www";
            }
            else if (Directory.Exists(sitepath + @"\htdocs"))
            {
                docroot = sitepath + @"\htdocs";
            }
            else if (Directory.Exists(sitepath + @"\public_html"))
            {
                docroot = sitepath + @"\public_html";
            }

            if (File.Exists(vhostFile))
            {
                return;
            }
            File.WriteAllText(vhostFile, VhostTemplate);
            Utilities.ReplaceStringInFile(vhostFile, "<<SITENAME>>", domain);
            Utilities.ReplaceStringInFile(vhostFile, "<<SITEROOT>>", sitepath.Replace("\\", "/"));
            Utilities.ReplaceStringInFile(vhostFile, "<<DOCROOT>>", docroot.Replace("\\", "/"));
            Utilities.ReplaceStringInFile(vhostFile, "<<PORT_HTTP>>", Config.Get("App", "DefaultPortHttp"));
            Utilities.ReplaceStringInFile(vhostFile, "<<PORT_HTTPS>>", Config.Get("App", "DefaultPortHttps"));
        }
コード例 #2
0
        public static void SetDefaultVhost()
        {
            var defaultVhostFile = ApacheConfDir + @"\vhost\00-default.conf";

            if (File.Exists(defaultVhostFile))
            {
                File.Delete(defaultVhostFile);
            }
            var fs1 = new FileStream(defaultVhostFile, FileMode.Create, FileAccess.Write);

            new StreamWriter(fs1).Write("");
            fs1.Close();

            File.WriteAllText(defaultVhostFile, VhostTemplate);
            Utilities.ReplaceStringInFile(defaultVhostFile, "<<SITENAME>>", "localhost");
            Utilities.ReplaceStringInFile(defaultVhostFile, "<<SITEROOT>>", Config.Get("App", "DocumentRoot").Replace("\\", "/"));
            Utilities.ReplaceStringInFile(defaultVhostFile, "<<DOCROOT>>", Config.Get("App", "DocumentRoot").Replace("\\", "/"));
            Utilities.ReplaceStringInFile(defaultVhostFile, "<<PORT_HTTP>>", Config.Get("App", "DefaultPortHttp"));
            Utilities.ReplaceStringInFile(defaultVhostFile, "<<PORT_HTTPS>>", Config.Get("App", "DefaultPortHttps"));

            // Don't forget to change default port
            var cfgPortsFile = ApacheConfDir + @"\ports.conf";

            if (File.Exists(cfgPortsFile))
            {
                File.Delete(cfgPortsFile);
            }
            var fs2 = new FileStream(cfgPortsFile, FileMode.Create, FileAccess.Write);

            new StreamWriter(fs2).Write("");
            fs2.Close();
            var portHttp  = Config.Get("App", "DefaultPortHttp");
            var portHttps = Config.Get("App", "DefaultPortHttps");
            var cfgPorts  = "Listen " + portHttp + "\n<IfModule ssl_module>\n\tListen " + portHttps + "\n</IfModule>";

            File.WriteAllText(cfgPortsFile, cfgPorts);
        }