File: //usr/local/CyberCP/ApachController/__pycache__/ApacheController.cpython-39.pyc
a
��h]4 � @ sN d dl Z d dlZd dlZd dlmZ d dlmZ d dlm Z G dd� d�Z
dS )� N)�ApacheVhost)�ProcessUtilitiesc @ s e Zd ZdZe�� ejks(e�� ejkrrdZdZ dZ
dZdZdZ
dZd Zd
ZdZdZd
ZdZdZdZdZdZdZnHdZdZ dZ
dZdZdZ
dZdZdZdZdZdZd Zd!Zd"Zd#Zd$Zd%Zd&Zd'Zed(d)� �Zed*d+� �Zed,d-� �Zed.d/� �Z ed0d1� �Z!d2S )3�ApacheControllerz$/home/cyberpanel/apacheInstallStatusz
/etc/httpdz/etc/httpd/conf.d/z
/etc/opt/remiz#/opt/remi/php54/root/etc/php-fpm.d/z#/opt/remi/php55/root/etc/php-fpm.d/z/etc/opt/remi/php56/php-fpm.d/z/etc/opt/remi/php70/php-fpm.d/z/etc/opt/remi/php71/php-fpm.d/z/etc/opt/remi/php72/php-fpm.d/z/etc/opt/remi/php73/php-fpm.d/z/etc/opt/remi/php74/php-fpm.d/z/etc/opt/remi/php80/php-fpm.d/z/etc/opt/remi/php81/php-fpm.d/z/etc/opt/remi/php82/php-fpm.d/z/etc/opt/remi/php83/php-fpm.d/z/etc/opt/remi/php84/php-fpm.d/z/etc/opt/remi/php85/php-fpm.d/�httpdz/etc/apache2z/etc/apache2/sites-enabled/z/etc/phpz/etc/php/5.4/fpm/pool.d/z/etc/php/5.5/fpm/pool.d/z/etc/php/5.6/fpm/pool.d/z/etc/php/7.0/fpm/pool.d/z/etc/php/7.1/fpm/pool.d/z/etc/php/7.2/fpm/pool.d/z/etc/php/7.3/fpm/pool.d/z/etc/php/7.4/fpm/pool.d/z/etc/php/8.0/fpm/pool.d/z/etc/php/8.1/fpm/pool.d/z/etc/php/8.2/fpm/pool.d/z/etc/php/8.3/fpm/pool.d/z/etc/php/8.4/fpm/pool.d/z/etc/php/8.5/fpm/pool.d/�apache2a� # Select the MPM module which should be used by uncommenting exactly
# one of the following LoadModule lines:
# prefork MPM: Implements a non-threaded, pre-forking web server
# See: http://httpd.apache.org/docs/2.4/mod/prefork.html
#LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
# worker MPM: Multi-Processing Module implementing a hybrid
# multi-threaded multi-process web server
# See: http://httpd.apache.org/docs/2.4/mod/worker.html
#
#LoadModule mpm_worker_module modules/mod_mpm_worker.so
# event MPM: A variant of the worker MPM with the goal of consuming
# threads only for connections with active processing
# See: http://httpd.apache.org/docs/2.4/mod/event.html
#
LoadModule mpm_event_module modules/mod_mpm_event.so
<IfModule mpm_event_module>
StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxRequestWorkers 30
MaxConnectionsPerChild 1000
</IfModule>z%/etc/httpd/conf.modules.d/00-mpm.confc
C sd zt j�tj�rW dS W dS W n@ ty^ } z(dt| �df }tj� |� W Y d } ~ n
d } ~ 0 0 d S )N� r z%s. [%s]z)[ApacheController.checkIfApacheInstalled])
�os�path�existsr � php80Path�
BaseException�str�logging�CyberCPLogFileWriter�writeToFile)�msg�message� r �6/usr/local/CyberCP/ApachController/ApacheController.py�checkIfApacheInstalled\ s
&z'ApacheController.checkIfApacheInstalledc
C sd z(t �t�| ��}|dkr W dS W dS W n6 ty^ } ztj�t|�� W Y d }~dS d }~0 0 d S )Nr r ) �
subprocess�call�shlex�splitr r r r r
)�command�resr r r r �executioner� s
zApacheController.executionerc
C s� �z�t �� t jks t �� t jkr&d} nd} t �| d d�dkrBW dS t �� t jks`t �� t jk�r�d}tj�|�rzt�|� t j
d }t|d��� }|�
d �d
k�rlt|d��� }t|d�}|D ]�}|�
d�d
kr�|�
d
�d
kr�|�
d�d
kr�|�d� q�|�
d�d
k�r$|�
d�d
k�r$|�d� q�|�
d�d
k�rZ|�
d�d
k�rZ|�d� |�d� q�|d dk�rlq�q�|�|� q�|�� ttjd�}|�tj� |�� n�t j
d }d}t|d�}|�d� |�� d|� �} t �| d d�dk�r�W dS d|� �} t �| d d�dk�rW dS d} t �| d d�dk�r2W dS d} t �| d d�dk�rPW dS t|d�}|�d � |�� t �� t jk�s�t �� t jk�r�d!} nd"} d#| � d$�} t�| � d%| � d$�} t�| � W d&S t�y� }
zt|
�W Y d }
~
S d }
~
0 0 d S )'Nz0yum install -y httpd httpd-tools mod_ssl php-fpmz>apt update -y && sudo apt upgrade -y && apt install apache2 -yTr �%Failed to install Apache and PHP-FPM.z/etc/httpd/conf.d/ssl.confz/conf/httpd.conf�rzListen 8083����wZListen�80�#zListen 8083
Listen 8082
�UserzUser nobody
�Groupz
Group nobody
z6SetEnv LSWS_EDITION Openlitespeed
SetEnv X-LSCACHE on
z
/apache2.confz/etc/apache2/ports.confz1sed -i 's/User ${APACHE_RUN_USER}/User nobody/g' zApache run user change failedz5sed -i 's/Group ${APACHE_RUN_GROUP}/Group nogroup/g' zApache run group change failedz*apt-get install apache2-suexec-pristine -yz"Apache run apache2-suexec-pristinez9a2enmod suexec proxy ssl proxy_fcgi proxy rewrite headerszApache run suexec proxy ssl�az7
SetEnv LSWS_EDITION Openlitespeed
SetEnv X-LSCACHE on
r r zsystemctl start z.servicezsystemctl enable r )r �decideDistro�centos�cent8r r r r
�remover �serverRootPath�open�read�find� readlines�
writelines�closer �mpmConfigsPath�write�
mpmConfigsr r
)r �sslPath�confPathZCurrentConf�datar �itemsZ portsPath�WriteToFile�serviceNamer r r r �
InstallApache� sx
*
zApacheController.InstallApachec C s� t �� t jkst �� t jkrVt jdkr,d} nd} t�| � d} t �| d d�dkr�dS nhd} t �| d d�dkrpd S d
} t �| d d�dkr�dS d} t �| d d�dkr�d
S d} t �| d d�dkr�dS ddlm} |� � dS )Nr zFyum install -y https://rpms.remirepo.net/enterprise/remi-release-9.rpmzFyum install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpmz�yum install -y php?? php??-php-fpm php??-php-mysql php??-php-curl php??-php-gd php??-php-mbstring php??-php-xml php??-php-zip php??-php-intlTr zFailed to install php54-fpmz-apt-get install software-properties-common -yz,Failed to install software-properties-commonz)apt install python-software-properties -yz,Failed to install python-software-propertiesz$add-apt-repository ppa:ondrej/php -yzFailed to ppa:ondrej/phpz�DEBIAN_FRONTEND=noninteractive apt-get install -y php-fpm php?.?-fpm php?.?-fpm php?.?-mysql php?.?-curl php?.?-gd php?.?-mbstring php?.?-xml php?.?-zip php?.?-intlr )�Upgrade)
r r&