示例#1
0
def stopOrRestartLitespeed(request):
    try:
        userID = request.session['userID']

        admin = Administrator.objects.get(pk=userID)

        if admin.type == 3:
            return HttpResponse("You don't have enough priviliges to access this page.")

        data = json.loads(request.body)

        reboot = data['reboot']

        if reboot==1:
            if ProcessUtilities.restartLitespeed() == 1:
                status = {"reboot":1,"shutdown":0}
            else:
                status = {"reboot": 0, "shutdown": 0, "error_message":"Please see CyberCP main log file."}
        else:
            if ProcessUtilities.stopLitespeed() == 1:
                status = {"reboot":0,"shutdown":1}
            else:
                status = {"reboot": 0, "shutdown": 0, "error_message":"Please see CyberCP main log file."}

        final_json = json.dumps(status)
        return HttpResponse(final_json)

    except KeyError, msg:
        logging.CyberCPLogFileWriter.writeToFile(str(msg) + "[stopOrRestartLitespeed]")
        return HttpResponse("Not Logged in as admin")
示例#2
0
def stopOrRestartLitespeed(request):
    try:
        userID = request.session['userID']

        admin = Administrator.objects.get(pk=userID)

        if admin.type == 3:
            return HttpResponse(
                "You don't have enough priviliges to access this page.")

        data = json.loads(request.body)

        reboot = data['reboot']

        if reboot == 1:
            if ProcessUtilities.restartLitespeed() == 1:
                status = {"reboot": 1, "shutdown": 0}
            else:
                status = {
                    "reboot": 0,
                    "shutdown": 0,
                    "error_message": "Please see CyberCP main log file."
                }
        else:
            if ProcessUtilities.stopLitespeed() == 1:
                status = {"reboot": 0, "shutdown": 1}
            else:
                status = {
                    "reboot": 0,
                    "shutdown": 0,
                    "error_message": "Please see CyberCP main log file."
                }

        final_json = json.dumps(status)
        return HttpResponse(final_json)

    except KeyError, msg:
        status = {
            "reboot": 0,
            "shutdown": 0,
            "error_message": "Not logged in as admin"
        }
        logging.CyberCPLogFileWriter.writeToFile(
            str(msg) + "[stopOrRestartLitespeed]")
        return HttpResponse("Not Logged in as admin")
示例#3
0
    def switchTOLSWS(licenseKey):
        try:

            os.environ['TERM'] = "xterm-256color"

            statusFile = open(ServerStatusUtil.lswsInstallStatusPath, 'w')
            FNULL = open(os.devnull, 'w')

            logging.CyberCPLogFileWriter.statusWriter(
                ServerStatusUtil.lswsInstallStatusPath,
                "Starting conversion process..\n")
            logging.CyberCPLogFileWriter.statusWriter(
                ServerStatusUtil.lswsInstallStatusPath,
                "Removing OpenLiteSpeed..\n", 1)

            ## Try to stop current LiteSpeed Process

            ProcessUtilities.killLiteSpeed()

            if os.path.exists('/usr/local/lsws'):

                if not os.path.exists('/usr/local/lswsbak'):
                    shutil.copytree('/usr/local/lsws',
                                    '/usr/local/lswsbak',
                                    symlinks=True,
                                    ignore=ignore_patterns('*.sock*'))

                dirs = os.listdir('/usr/local/lsws')
                for dir in dirs:
                    if dir.find('lsphp') > -1:
                        continue
                    finalDir = '/usr/local/lsws/' + dir
                    try:
                        shutil.rmtree(finalDir)
                    except:
                        pass

            if os.path.exists('/etc/redhat-release'):
                command = 'yum remove -y openlitespeed'
            else:
                command = "apt-get -y remove openlitespeed"

            ServerStatusUtil.executioner(command, FNULL)

            logging.CyberCPLogFileWriter.statusWriter(
                ServerStatusUtil.lswsInstallStatusPath,
                "OpenLiteSpeed removed.\n", 1)

            logging.CyberCPLogFileWriter.statusWriter(
                ServerStatusUtil.lswsInstallStatusPath,
                "Installing LiteSpeed Enterprise Web Server ..\n", 1)

            if ServerStatusUtil.installLiteSpeed(licenseKey, statusFile) == 0:
                logging.CyberCPLogFileWriter.statusWriter(
                    ServerStatusUtil.lswsInstallStatusPath,
                    "Failed to install LiteSpeed. [404]", 1)
                ServerStatusUtil.recover()
                return 0

            logging.CyberCPLogFileWriter.statusWriter(
                ServerStatusUtil.lswsInstallStatusPath,
                "LiteSpeed Enterprise Web Server installed.\n", 1)

            # if ServerStatusUtil.setupFileManager(statusFile) == 0:
            #     logging.CyberCPLogFileWriter.statusWriter(ServerStatusUtil.lswsInstallStatusPath, "Failed to set up File Manager. [404]", 1)
            #     ServerStatusUtil.recover()
            #     return 0

            logging.CyberCPLogFileWriter.statusWriter(
                ServerStatusUtil.lswsInstallStatusPath,
                "Rebuilding vhost conf..\n", 1)

            ServerStatusUtil.rebuildvConf()

            logging.CyberCPLogFileWriter.statusWriter(
                ServerStatusUtil.lswsInstallStatusPath,
                "vhost conf successfully built.\n", 1)

            ProcessUtilities.stopLitespeed()
            ProcessUtilities.restartLitespeed()

            logging.CyberCPLogFileWriter.statusWriter(
                ServerStatusUtil.lswsInstallStatusPath,
                "Successfully switched to LITESPEED ENTERPRISE WEB SERVER. [200]\n",
                1)

        except BaseException, msg:
            logging.CyberCPLogFileWriter.statusWriter(
                ServerStatusUtil.lswsInstallStatusPath,
                "%s. [404]" % (str(msg)), 1)
            logging.CyberCPLogFileWriter.writeToFile(str(msg))
            ServerStatusUtil.recover()