https://github.com/jamesrezo/webhelper-parser
Web Server Configuration File Generic Parser
https://github.com/jamesrezo/webhelper-parser
Last synced: 3 months ago
JSON representation
Web Server Configuration File Generic Parser
- Host: GitHub
- URL: https://github.com/jamesrezo/webhelper-parser
- Owner: JamesRezo
- License: mit
- Created: 2016-09-03T13:16:18.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2019-12-17T21:35:22.000Z (over 5 years ago)
- Last Synced: 2025-02-02T02:12:39.714Z (5 months ago)
- Language: PHP
- Homepage:
- Size: 99.6 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Web Server Configuration File Generic Parser
Part of [WebHelper](http://github.com/JamesRezo/WebHelper), a Generic Httpd Configuration Helper.[](https://travis-ci.org/JamesRezo/webhelper-parser)
[](https://scrutinizer-ci.com/g/JamesRezo/webhelper-parser/?branch=master)
[](https://scrutinizer-ci.com/g/JamesRezo/webhelper-parser/?branch=master)
[](https://codeclimate.com/github/JamesRezo/webhelper-parser)
[](https://insight.sensiolabs.com/projects/2ef11e52-9098-4c72-a0c2-c83996e9bf62)
[](https://www.versioneye.com/user/projects/57e64724bd6fa6004e1204da)
[](https://packagist.org/packages/webhelper/parser)
[](https://packagist.org/packages/webhelper/parser)
[](https://styleci.io/repos/67290969)## Installation
```composer require webhelper/parser```
## Basic Usage
Parse an Apache configuration file:
```php
use WebHelper\Parser\Factory;
use WebHelper\Parser\ParserException;
use WebHelper\Parser\InvalidConfigException;$factory = new Factory()
$parser = $factory->createParser('apache');
$parser->getServer()->setPrefix('/usr');try {
$activeConfig = $parser
->setConfigFile('/private/etc/apache2/httpd.conf')
->getActiveConfig();echo $parser->getOriginalConfig();
echo var_export($activeConfig, true).PHP_EOL;
} catch (ParserException $e) {
//file not found
var_dump($e->getMessage());
} catch (InvalidConfigException $e) {
//empty config or syntax error
var_dump($e->getMessage());
}
```Or the same with Nginx
```php
use WebHelper\Parser\Factory;$factory = new Factory()
$parser = $factory->createParser('nginx');
$parser->getServer()->setPrefix('/usr/sbin/');$activeConfig = $parser
->setConfigFile('/etc/nginx/nginx.conf')
->getActiveConfig();// etc...
```## Known issues
- Does not support old macos9 file format.