2010-07-05 5 views
1

나는 PHP webapp 규칙을 따르고 싶다. 많은 설정이 아파치 설정 파일에서 이루어진다.아파치 설정 파일에 사용할 변수를 설정할 수 있습니까?

구성 파일에서 여러 용도로 사용할 수있는 경로가 포함 된 문자열을 구성 할 수있는 방법이 있습니까?

희미한 예는 다음과 같을 수 있습니다 : 당신이 볼 수 있듯이

EnginePath = /opt/engine 
AppPath = /opt/anapp 

DocumentRoot [AppPath]/Public 
CustomLog [AppPath]/Logs/Access.log combined 

php_admin_value auto_prepend_file [EnginePath]/EngineBootstrap.php 

, I 시스템 및 응용 프로그램 경로의 여러 repeted 발행 수를 consolodate 할 수있는 기회가 많이 있습니다. 이렇게하면 설정 파일을 최대한 일반화 된 상태로 유지하기가 쉬우므로 앱 또는 엔진 위치를 한 번 수정해야합니다. 구성 파일 당 여러 번 사용하는 것이 아닙니다.

도움 주셔서 감사합니다.

+0

관련 질문을 mod_macro 수 있습니다 : [중복을 줄이기 위해 아파치 설정 파일에 변수 사용?] (http://serverfault.com/questions/64656/using-variables-in-apache-config-files-to-reduce-duplication/64745 # 64745) – Flow

답변

0

아는 한, 아파치 설정 파일에서는 불가능합니다.

그러나 httpd.conf 파일을 사전 처리하는 것이 가능할 수 있습니다. 이 기술을 다른 구성 파일과 함께 사용 했으므로 제대로 작동합니다. 당신이 PHP를 사용하는 경우, 예를 들어, :

를 DocumentRoot에 <?php echo $EnginePath; ?>/공공
때 CustomLog <?php echo $AppPath; ?> /Logs/Access.log이

php_admin_value을 결합

<?php
$EnginePath = '/opt/engine';
$AppPath = '/opt/anapp';
?>

당신의 httpd.conf.php 저장 auto_prepend_file <?php echo $EnginePath; ?> /EngineBootstrap.php

당신은 당신의 설정을 변경하려면

, 전화 :

이것은 당신이 당신의 conf 파일 당신이 만드는 할 때마다 다시 생성해야한다는 것을 의미 httpd.conf.php>을 httpd.conf

PHP 변경은 가능하지만 빠른 쉘 스크립팅을 통해 자동화 될 수 있습니다.

+0

이 질문에 올바르게 대답하지 않습니다 : 변수를 정의 할 수 있습니다. 아래를 참조하십시오. – Nostradamus1935

관련 문제