Я запускаю встроенный сервер PHP с
php -S 127.0.0.1:80 index.php
Я хочу передать всю строку URI в поле с именем «url» в массиве $_GET. Когда я ввожу http://localhost/thisIsAURLString
, я хочу, чтобы var_dump($_GET);
возвращало array(1) { ["url"]=> string(16) "thisIsAURLString" }
Есть ли способ сделать это с помощью встроенного сервера PHP?
Веб-приложение обычно запускается в производственной среде с помощью nginx и файла конфигурации, как показано ниже. Эта конфигурация передает URL-адрес в поле «url» в переменной $_GET, но я хочу сделать что-то подобное со встроенным сервером PHP.
server {
listen 5001 default_server;
listen [::]:5001 default_server ipv6only=on;
root [myRoot];
index index.php index.html index.htm;
server_name [myServerName];
location /uploads {
try_files $uri $uri/ =404;
}
location /assets {
try_files $uri $uri/ =404;
}
location / {
try_files $uri $uri/ /index.php?$query_string;
rewrite ^/(.*)$ /index.php?url=$1 last;
}
location ~ .php$ {
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_index index.php;
fastcgi_pass unix:/var/run/php/php7.0-fpm-01.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
}
РЕДАКТИРОВАТЬ (некоторый контекст):
Контекст таков, что я ТА со многими студентами. Рассматриваемое веб-приложение в настоящее время находится в производственной среде с nginx и работает без сбоев, но всем моим ~ 100 студентам необходимо загрузить и развернуть одно и то же веб-приложение локально на своих компьютерах. Я не могу изменить код PHP. Развертывание должно быть как можно более простым и плавным, и если они могут сделать это с помощью какой-нибудь легко воспроизводимой php-команды, это было бы идеально.