krek753

krek753
Рейтинг
104
Регистрация
15.12.2008

Тоже разорался.

Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on

# Перенаправление с ДОМЕН на ДОМЕН/api
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^(.*)$ /api/$1 [R=301]

#Если URI начинается с api/ то перенаправлять все запросы на index.php
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^api/(.*)$ /index.php

Теперь второй вопрос возник.

Как обращаться к скрипту index.php через адрес директории ?

т.е.  не domen.com/dir/api/index.php

a

domen.com/dir/api

Разобрался, я идио..
Обращение только к конкретному фалу работает. Т.е. просто к директории с index.php не работает,  а если dir/index.php работает.


Всем спасибо.

Ilya74 #:
Вы пробовали посмотреть содержимое php://input до использования simplexml?

Да, пустой

$dataPOST = trim(file_get_contents('php://input'));

file_put_contents('log.txt', $dataPOST, FILE_APPEND);

webinfo #:
Загрузил код из стартпоста на пару своих сайтов, результат такой:

Версия PHP на одном 7.3, на другом вообще 5.6.
https://webinfo.guru/send3.php

Так что копайте в другом месте, или наймите специалиста, который раскопает.

То, что скрипт рабочий уже поняли. И то что версия PHP не влияет, тоже поняли.

"Нанять специалиста" - Спасибо за совет.

Протестировал на локальном сервере. Все тоже работает. Не работает на VDS. 

Понять, что не так не могу, совсем. 

PHP Version 7.1.26

webinfo #:
Мне кажется, вы пытаетесь сделать что-то нелегальное. Очень похоже на фейковый сервис, типа поддельного сайта.

что нелегально? Запросы отправляю я,  принимаю я. Выше я описал, зачем нужно. Чтобы через один протокол, подружить разные API.

lutskboy #:

у меня опенсервер. PHP 7.4

посмотрите что у вас приходит

Лог пустой


у меня  PHP Version 7.3.29

lutskboy #:

сделал по вашему примеру что в первом посте и по-своему и оба варианта работают.

string(50) "SimpleXMLElement Object

(

[message] => Test

)

"

Супер. Тогда получается у меня, что-то не так в настройках PHP ?

подскажите, какая версия PHP ?

webinfo #:

Вы сами на какой стороне? Пользователь API или разработчик API?

За тех кто победит))

Всегда был в пользователях.

Но теперь есть необходимость быть принимающей стороной.
т.е. интеграция пользователя на ресурсе реализована по этому протоколу. Есть другие API, чтобы не проводить интеграцию по всем API хочу подружить реализованный протокол со сторонними API. Но для этого нужно получать запросы по реализованному протоколу.

Проблема только в том, как получить эти данные XML.
Запрос приходит пустой, если отловить его var_dump($_POST);

Может это из-за того, что отключен авторизация? Он обращается напрямую к скрипту. 

Всего: 92