Оценить PHP-скрипт с использованием PHP из Java

#java #php #http #nginx #server

#java #php #http #nginx #сервер

Вопрос:

У меня есть простой сервер на Java. Он создает serversocket и принимает запросы от браузера через ip и порт. Он может обрабатывать файлы, такие как изображения, html… Теперь я хотел бы включить php . Nginx можно ли как-то взаимодействовать с php, используя путь:

  unix:/run/php/php7.0-fpm.sock
  

Я использую linux btw. и php7.0-fpm , как теперь очевидно :

В моем понимании nginx (который я также использую) «отправляет» php-scripts в php-interpreter , и он отвечает, отправляя обратно какой-либо другой файл (изображения, html …) nginx , Который затем передает содержимое в браузер в качестве ответа. Моя цель — исключить замену nginx в этой цепочке моим собственным сервером. Он гораздо менее развит, чем nginx (я знаю и игнорирую), но конечной целью является отсутствие полностью разработанного веб-сервера.

Я был бы очень признателен, если бы кто-нибудь мог мне помочь. Интернет как источник знаний до сих пор меня подводил.

Также: если мои предположения неверны, пожалуйста, поправьте меня. Это также было бы полезно.

Большое вам спасибо!

Комментарии:

1. NGINX взаимодействует с PHP через TCP-порт или управляющий сокет, используя протокол FastCGI . То, что вы пытаетесь сделать, это вызвать «написать клиент FastCGI на Java». Просто загуглите «java fastcgi client», и вы должны найти пару примеров в Интернете.

2. Я просто добавлю это как «тот единственный вариант, который на самом деле не рекомендуется, но вы должны знать, что это возможно», это было бы вызвать интерпретатор с помощью канала и использовать php-скрипт, который будет анализировать аргументы командной строки ( $argv ) в $_GET и $_POST . А затем включите фактический php-скрипт, который вам нужно обслуживать (вы также можете получить его имя через аргумент командной строки). Это быстрый, но грязный способ, которым я решил его некоторое время назад. Он становится все более и более сложным с сеансами и файлами cookie и, как правило, медленнее, чем FCGI, поэтому не пытайтесь, это серьезно не рекомендуется

3. Я просмотрел «java fastcgi client» и нашел библиотеки и тому подобное, но как я могу это реализовать? не используя внешний компонент / библиотеку… я также хотел бы узнать больше о создании канала между java и интерпретатором php.