Исходный код и используйте демонстрационный адрес git: Нажмите, чтобы просмотреть
устанавливать
1. Добавьте следующее в каталог проекта composer. JSON
Добавить склад
"repositories": { "packagist": { "type": "composer", "url": "https://packagist.phpcomposer.com" }, "croute": { "type": "vcs", "url": "[email protected]:luyunhua/croute.git" } }
Добавить зависимость
"require": { "php": ">=5.5.9", "luyunhua/croute": "dev-master" }
2. Обновите зависимости
обновление композитора
с помощью
Давайте предположим, что ваш PHP-проект поддерживает автоматическую загрузку, поэтому вам не нужно работать с исходными файлами, такими как библиотеки include, при использовании дистрибутивов маршрутизаторов.
Конфигурация Nginx
Настройка сервера
server { listen 82; #listen somename:8080; server_name _; index index.php; try_files $uri $uri/ @rewrite; location @rewrite { rewrite ^(.*)$ /index.php?_url=$1; } location ~ \.php$ { root /var/wwwroot/mframe; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }
Nginx перенаправляет запросы PHP на порт 82 для обработки
location ~ \.php$ { proxy_pass http://127.0.0.1:82; }
Демонстрация основного кода
[email protected] * User: luyh * Date: 16/5/30 * Time: 1:42 p.m. * File: index.php */ include __DIR__ . '/boots/autoload.php'; $fileRoute = new \Tomato\Route\FileRoute(); $fileRoute->get('/myroute/abc/\d+' ,'App\Ctrl\[email protected]'); $fileRoute->post('/myroute/post/\w+/d' ,'App\Ctrl\[email protected]'); $dispatcher = new \Tomato\Route\Dispatcher($fileRoute); $dispatcher->run();