Apache терпит неудачу, когда я передаю URL в качестве аргумента - PullRequest
3 голосов
/ 04 февраля 2010

Привет всем, я действительно смущен этой проблемой. Я постараюсь описать это:

Проблема в следующем: http://mydomain.com/somedir/somephp.php?arg1=value&arg2=http://otherdomain.com&arg3=http://othertoo.com/somepath/something... полностью терпит неудачу. С и без URL кодирования.

Мой сайт читает все после mydomain.com/everything, кроме существующих файлов и каталогов. Я делаю это с mod_rewrite:

Options -Indexes 

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ handler.php

Пример запроса выше - посадка в handler.php. Если я закомментирую RewriteRule, будет ошибка apache:

Forbidden

You don't have permission to access /somedir/somephp.php on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

Множество тестов и т. Д. Я выяснил, что существует проблема со строкой http://, или: // в аргументах url. Но его приход в URL закодирован: S

Этот материал должен быть системой аутентификации openId, и он не работает при обратной передаче, и я уверен, что URL в аргументе url делает эту ошибку.

Я никогда раньше не сталкивался с этой проблемой, хотя, я сделал много того же самого. URL кодировать вещь должна работать.

Пожалуйста, помогите мне! Thanx!

Ответы [ 2 ]

2 голосов
/ 16 февраля 2010

Я столкнулся с точно такой же проблемой. здесь

Вам нужно будет связаться с вашим поставщиком услуг хостинга. Есть некоторые правила, которые противоречат их правилам .htaccess. Поэтому попросите их внести в белый список ваш сайт с такими правилами.

Не забудьте указать URL-адрес проблемы при сообщении о проблеме своему провайдеру веб-хостинга.

Я почти уверен, что ваша проблема будет решена после того, как ваш сайт будет добавлен в белый список правил безопасности вашего поставщика услуг.

Моя проблема была решена, когда я сообщил о проблеме своему провайдеру веб-сайтов.

0 голосов
/ 04 февраля 2010

Вы можете попробовать закодировать его с base64:

http://www.webtoolkit.info/javascript-base64.html

затем расшифруйте его в приложении.

...