2016-11-30 3 views
0

Я понимаю, что это может быть ОЧЕНЬ неясный вопрос, но это сводит меня с ума, у меня есть 5 дополнительных символов, вставленных в URL-адрес во время навигации между страницами на моем сайте. (например, http://track.chhs.nsw.edu.au/UXTWP/userAccount.php?) UXTWP добавляется, и я не уверен, откуда, но он случайно нарушает навигацию.5 символов, добавленных в середине моего URL

Сайт размещен на goDaddy. Он содержит HTML CSS PHP JavaScript и mySQL. Все работало хорошо, пока я не добавил «исправление» в PHP, чтобы остановить потенциальный «взлом», который будет использовать идентификатор, передаваемый в URL-адресе, для переключения просматриваемого контента. Я не уверен, что это была проблема, но это было самое последнее изменение, прежде чем возникли ошибки.

это site Я также хотел разместить код на phpfiddle, но я не уверен, что добавить?

if(isset($_GET['a'])){ 
    if(strpos($userRow['sID'], $_GET['a']) !== false) { 
     $_SESSION['student']=$_GET['a']; 
     $tempArray = db_select("SELECT * FROM student WHERE sID ='".$_SESSION['student']."'"); 
     $studentRow = array_shift($tempArray); 
     $_SESSION['impactTool'] =$studentRow['impactAssToolID']; 
     $SName = $studentRow['sName']; 
     $SDOB = $studentRow['dob']; 
     $SFormDate = $studentRow['formDate']; 
     $prevInf = $studentRow['prevInfo']; 
     $famInf = $studentRow['famInfo']; 
     $contInf = $studentRow['contextInfo']; 
     $impactIDMsg = "?z=".$_SESSION['impactTool']; 
     $btnFlag = true; 
     }else{ 
      header("Location:logout.php"); 
     } 

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

Заранее благодарю за предоставленную помощь.

+0

ничего в коде при условии не изменяет URL –

+0

у меня нет никакого кода, который непосредственно обращается к URL, кроме стандартной навигации с HTML теги и один PHP построен тег
'

    ' \t \t \t \t \t \t '< ? PHP Еогеасп ($ studentRow в $ Val) { ' \t \t \t \t \t \t' Еогеасп ($ $ Val, как ряд) { '\t \t \t \t \t \t 'echo '
  • ".$row['sName']."
  • «;?' \t \t \t \t \t \t '}' \t \t \t \t \t \t '}>' \t \t \t \t \t '
' – EduCoder

+0

свой ваш код, добавив символы, так что я не знаю, как мы может помочь с его устранением –

ответ

0

Хорошо, на этот раз я думаю, что исправлено !! Большое вам спасибо @Progrock за ваши постоянные тесты и идеи. Исправление: Я включил пустой файл .htaccess в корень сайта. Теперь я могу перемещаться по различным страницам, используя навигацию на месте и навигацию браузера, и я больше не могу создавать ошибку.

Я надеюсь, что это постоянное исправление, и я полагаю, что именно браузер/сервер ищет файл .htaccess для определенных триггеров, когда он не находит его на общем сервере .htaccess.

Надеюсь, что это сообщение поможет кому-то в будущем испытать подобную проблему.

+0

Если вы можете перейти к файловой системе, если Apache разрешает переопределения, файл .htaccess, скорее всего, будет искать каталог и родительские каталоги. Сканирование файловой системы полностью. Мог ли там ранее существовать файл .htaccess, который вы скрепили? Это общий хост? Может ли другой сайт/скрипт записать файл .htaccess где-нибудь в дереве каталогов? Действовать с осторожностью. – Progrock

-1

Не ответ, но наблюдение:

я, наконец, испытал ошибку при использовании локон для просмотра заголовков:

curl -I http://track.chhs.nsw.edu.au 

Выход:

HTTP/1.1 302 Found 
Connection: close 
Pragma: no-cache 
cache-control: no-cache 
Location: /TSXbZ/ 

Тогда вскоре после того, одно и то же curl call привел к желаемой странице без перенаправления. Таким образом, ошибка, как вы сказали, непоследовательна.

Если я сделаю перенаправление адреса заголовка в Php-коде. Или я использую правило .htaccess, чтобы сделать что-то подобное: Заголовок возвращение читает что-то вроде этого:

Server: Apache/2.2.22 (Foo) 

Отсутствие заголовка сервера Apache (для некоторых из ваших ответов) заставляет меня подозревать, что прокси или кэширование слоя могут сидеть перед вашим веб-сервером и кодом Php.

Чтение вашего кода, я не вижу никаких очевидных причин для вставки символов.

УВЕДОМЛЕНИЕ последующие различия со следующими ответами (возвращаемые заголовки):

3:21% curl -I http://track.chhs.nsw.edu.au  
HTTP/1.1 302 Found 
Connection: close 
Pragma: no-cache 
cache-control: no-cache 
Location: /XRjRZ/ 

3:23% curl -I http://track.chhs.nsw.edu.au 
HTTP/1.1 302 Found 
Connection: close 
Pragma: no-cache 
cache-control: no-cache 
Location:/

3:24% curl -I http://track.chhs.nsw.edu.au 
HTTP/1.1 302 Found 
Connection: close 
Pragma: no-cache 
cache-control: no-cache 
Location:/

3:24% curl -I http://track.chhs.nsw.edu.au/index.php 
HTTP/1.1 302 Found 
Connection: close 
Pragma: no-cache 
cache-control: no-cache 
Location: /index.php 

3:24% curl -I http://track.chhs.nsw.edu.au/index.php 
HTTP/1.1 200 OK 
Date: Fri, 02 Dec 2016 15:24:56 GMT 
Server: Apache/2.4.23 
X-Powered-By: PHP/5.4.45 
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 
Set-Cookie: PHPSESSID=60d307bdc288bf1371dc5e0c8c397cdf; path=/ 
Vary: User-Agent 
Content-Type: text/html 

У вас есть эзотерический .htaccess, или конфигурация сервера?

+0

Я создал файл .htaccess некоторое время назад, исправить проблему, так как она была удалена, и на самом деле не понимает, как ее реализовать. У меня нет файла конфигурации сервера. Может ли он находиться в кеше сервера, даже если я удалил файл? BTW спасибо за сохраняющиеся с этой проблемой, потому что я WAY из моей глубины с этим. – EduCoder

+0

Целью, которую я пытался использовать .htaccess для, было уловить 404 ошибки и перенаправить пользователя на страницу index.php. – EduCoder

+0

Соответствует ли IP-адрес тому, что вы ожидаете от своего хостинга? Когда я смотрю IP, я получаю сервер Go Daddy. Может ли это быть злым прокси-сервером? – Progrock