Проверка кодов состояния FTP со Сценарием PHP

Как уже упоминалось много раз, это декларация. Это способ обратной совместимости. Одна из многих областей C ++, которая является тупой / непоследовательной / болезненной / фиктивной из-за ее наследия.

6
задан Stu Thompson 17 September 2008 в 08:00
поделиться

3 ответа

HTTP работает немного по-другому, чем FTP хотя, к сожалению. Хотя оба могут выглядеть одинаково в Вашем браузере, HTTP отделывается от основания URI (т.е. к ресурсу доступа A, у Вас есть идентификатор, который говорит Вам, как получить доступ к этому).

FTP является очень старым школьным управляемым сервером. Даже анонимный FTP является определенным взломом, так как Вы все еще предоставляете имя пользователя и пароль, это просто определяется как "анонимное" и Ваш адрес электронной почты.

Проверка, является ли FTP-сервер проверкой средств

  1. То, что можно соединиться с FTP-сервером

    if (!($ftpfd = ftp_connect($hostname))) { ... }

  2. То, что можно войти в сервер:

    if (!ftp_login($ftpfd, $username, $password)) { ... }

  3. Затем если там далее лежат в основе ресурсов, к которым необходимо получить доступ, чтобы протестировать, произошел ли конкретный сайт, затем используйте appropiate операцию на них. например, на файле, возможно, используйте ftp_mdtm() для получения в прошлый измененный раз или на каталоге посмотрите если ftp_nlist() работы.

3
ответ дан 17 December 2019 в 18:21
поделиться

Разве не было бы более просто использовать встроенный FTP PHP* функциональность, чем попытка к самокрутке? Если бы URI прибывает из источника вне Вашего управления, необходимо было бы проверить protocal определение (http:// или ftp://, и т.д.) для определения, какую функциональность использовать, но это довольно тривиально. Если существует теперь protocal указано (там, действительно должен быть!) затем Вы могли попытаться принять значение по умолчанию к http.

0
ответ дан 17 December 2019 в 18:21
поделиться

Если Вы хотите считать определенные ответы, необходимо будет открыть сокет и данные чтения-записи вручную.

<?php
$sock = fsockopen($hostname, $port);
?>

Затем Вы будете иметь к fput/fread данным назад и вперед.
Это потребует, чтобы Вы читали на протоколе FTP.

0
ответ дан 17 December 2019 в 18:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: