Я получаю это странное поведение во всех браузерах при попытке отправить эту форму.Эта форма имеет только 2 поля, заголовок и текст статьи.По умолчанию используется форма application / x-www-form-urlencoded.Когда отправлено, сайт иногда отвечает 404.
Журнал ниже взят непосредственно из Live HTTP Headers.
http://www.faulty-domain.com/article-page
POST /article-page HTTP/1.1
Host: www.faulty-domain.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.23) Gecko/20110920 Firefox/3.6.23 ( .NET CLR 3.5.30729)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://www.faulty-domain.com/article-page
Content-Type: application/x-www-form-urlencoded
Content-Length: 3288
blog_title=Article+Title+to+save&newsbody=%3Cp%3EThe+current+blah+blah+blah%3C%2Fp%3E
HTTP/1.1 302 Found
Date: Tue, 08 Nov 2011 12:42:23 GMT
Server: Apache/2.0.63 (Unix) mod_ssl/2.0.63 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 PHP/5.2.14
X-Powered-By: PHP/5.2.14
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Location: http://www.faulty-domain.com/notFound
Content-Encoding: gzip
Vary: Accept-Encoding
Content-Length: 26
Connection: close
Content-Type: text/html
Страница пытается отправить на себя, а затем проверить, еслиметод был почтовый и различные проверки, обычные вещи.Но тогда ответ http - это страница 404 not found.
Наша внутренняя структура работает как Code Igniter, так что весь запрос будет выполнять index.php.Очевидно, что веб-сервер даже не пытался выполнить index.php, но решил, основываясь на каких-либо заголовках запроса, что ответ должен быть 404.
Теперь я сделал свою собственную отладку и поиграл со статьейЯ отправляю.Я попытался добавить статью абзац за абзацем и посмотреть, по какому абзацу возникает ошибка.Форма подается штрафом до определенного абзаца, в тот момент я сказал Бинго!Я думал, что изолировал проблему и попытался отправить форму, используя только этот абзац, но затем отправил форму.Что сейчас озадачивает меня, почему веб-сервер принимает это как есть, но если добавить его в конце оригинальной статьи, он сходит с ума!
Это, вероятно, вещь htaccess или вещь веб-сервера, ноЯ просто не мог получить эту вещь прибитым.
Обновление:
Для всех тех, кто просил просмотреть отправляемые данные поста, вот ссылка.Я удалю файл через неделю или около того.http://www.globalpropertyguide.com/temp/faulty-article.html
Вот часть htaccess, которая может помочь.В основном наш index.php определяет, какой контроллер вызывать, исходя из того, какое значение получает $ mod.
RewriteRule ^([^/]+)/$ /$1 [R]
RewriteCond %{QUERY_STRING} !mod= [NC]
RewriteRule ^([^/]+)$ /index.php?mod=$1 [L]
Кроме того, если это когда-нибудь может помочь, это ошибка, которая приводит к входу в систему apache error_log
"POST /write-article HTTP/1.1" 302 26 "http://www.faulty-domain.com/write-article" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.24) Gecko/20111103 Firefox/3.6.24 ( .NET CLR 3.5.30729)"
"GET /notFound HTTP/1.1" 404 7635 "http://www.faulty-domain.com/write-article" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.24) Gecko/20111103 Firefox/3.6.24 ( .NET CLR 3.5.30729)"