feat: add Apache server support with configuration templates and IPC management logic

This commit is contained in:
Ümit Tunç
2026-03-30 22:36:57 +03:00
parent e22b1872f0
commit 400a71f568
4 changed files with 14 additions and 11 deletions
+4 -2
View File
@@ -43,7 +43,8 @@ async function rebuildNginxConfig(forceProjects: boolean = false): Promise<{ bin
const binPath = path.join(nginxPrefix, isWindows ? 'nginx.exe' : 'nginx')
const confDir = path.join(nginxPrefix, 'conf')
const logDir = path.join(configService.getBasePath(), 'logs')
const rootPath = path.join(app.getAppPath(), 'www')
const rootPath = path.join(configService.getBasePath(), 'www')
if (!fs.existsSync(rootPath)) fs.mkdirSync(rootPath, { recursive: true })
// Ensure directories exist
const projectsConfDir = path.join(configService.getBasePath(), 'generated_configs', 'projects')
@@ -155,7 +156,8 @@ async function rebuildApacheConfig(forceProjects: boolean = false): Promise<{ bi
const apacheRoot = path.dirname(path.dirname(binPath)) // bin'in üstü
const logDir = path.join(configService.getBasePath(), 'logs')
const rootPath = path.join(app.getAppPath(), 'www')
const rootPath = path.join(configService.getBasePath(), 'www')
if (!fs.existsSync(rootPath)) fs.mkdirSync(rootPath, { recursive: true })
// Ensure directories exist
const projectsConfDir = path.join(configService.getBasePath(), 'generated_configs', 'projects_apache')
+7 -5
View File
@@ -1357,11 +1357,13 @@ function App(): JSX.Element {
<EditIcon fontSize="small" />
</IconButton>
</Tooltip>
<Tooltip title="Nginx Ayarları">
<IconButton size="small" onClick={() => handleOpenProjectNginxConfig(project.host)} sx={{ color: 'rgba(255,255,255,0.4)', '&:hover': { color: '#39A7FF' } }}>
<TerminalIcon fontSize="small" />
</IconButton>
</Tooltip>
{project.serverType !== 'apache' && (
<Tooltip title="Nginx Ayarları">
<IconButton size="small" onClick={() => handleOpenProjectNginxConfig(project.host)} sx={{ color: 'rgba(255,255,255,0.4)', '&:hover': { color: '#39A7FF' } }}>
<TerminalIcon fontSize="small" />
</IconButton>
</Tooltip>
)}
<Tooltip title="Sil">
<IconButton size="small" onClick={() => handleRemoveProject(project.id)} sx={{ color: 'rgba(255,255,255,0.4)', '&:hover': { color: '#ff4444' } }}>
<DeleteIcon fontSize="small" />