Исходный код и используйте демонстрационный адрес 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();