Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как сделать ссылку на несуществующую страницу и сгенерировать её?

367
30 июня 2008 года
Meatcoins
303 / / 18.01.2006
Допустим я хочу сделать ссылку на несуществующую страницу типа mysite.ru/dir/page_2345.php, например, для регистрации пользователей или поместить там гостевую так, чтобы на неё нельзя было сделать ссылку.
page_2345 - имеет случайный номер.

Если создать файл .htaccess с таким содержимым:
ErrorDocument 404 http://www.mysite.ru/err404.php

То сервер будет перекидывать пользователя на неё. И в адресной строке браузера будет написано http://www.mysite.ru/err404.php. Как сделать так, чтобы пользователь думал, что он находится на странице, которая реально не существует!?
Может надо что-то послать клиенту с помощью функции Header(); в PHP?
Если Header(Location:...), то это переадресация, а есть ли заголовок, который сообщает клиенту его местоположение? Как сделать, чтоб у него в адресной строке было mysite.ru/dir/page_2345.php?
6
30 июня 2008 года
George
4.1K / / 05.01.2007
что-то жесть какая-то. по моему если пользователь зашел на страницу - значит страница существует. ;)
244
30 июня 2008 года
UAS
2.0K / / 19.07.2006
mod_rewrite??

Ну естессно что-то должно быть статикой.. Ну например page.php - это типа указывает, что гостевая, а цифры - просто рандом. Только если так, если правильно вас понял)
367
30 июня 2008 года
Meatcoins
303 / / 18.01.2006
Одна страница существует!
Допустим index.php имеет ссылку на page_234_random.php, которой реально не существует! Если просто такую ссылку сделать, то будет 404 ошибка!
А надо чтобы пользователь думал, что он туда зашёл!
6
30 июня 2008 года
George
4.1K / / 05.01.2007
имхо не получится. да и зачем тебе это надо? объясни цель сего действа...
92
30 июня 2008 года
Тень Пса
2.2K / / 19.10.2006
 
Код:
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} ^page_\d+.php$

RewriteRule ^page_(\d+).php$ index.php?action=guest_book&gen_id=$1 [L]
ну например так.

ЗЫ: не проверял. мож где подправить надо.
367
30 июня 2008 года
Meatcoins
303 / / 18.01.2006
Ладно, что-то это всё не получается...
Вероятно, надо будет придумать что-нибудь другое...
92
30 июня 2008 года
Тень Пса
2.2K / / 19.10.2006
что у тебя не получается?...

ты не знаешь как пользовать mod_rewrite? или ты не знаешь что такое mod_rewrite? :)
367
30 июня 2008 года
Meatcoins
303 / / 18.01.2006
Почитаю про него...
251
30 июня 2008 года
SkyMаn
1.7K / / 31.07.2007
Цитата: Тень Пса
что у тебя не получается?...

ты не знаешь как пользовать mod_rewrite? или ты не знаешь что такое mod_rewrite? :)



Скорее всего, не получается набраться терпения и/или пользоваться поиском

364
01 июля 2008 года
Xupypr
148 / / 20.04.2000
mod_rewrite ... по другому никак... иначе в заголовке все равно будет отображаться адрес существующей странице на которой пользователь.
15
01 июля 2008 года
shaelf
2.7K / / 04.05.2005
Самый банальный пример - вики. Всё зависит от архитектуры твоего сайта.
367
04 июля 2008 года
Meatcoins
303 / / 18.01.2006
Я думал Wiki - это страницы, которые может менять любой вошедший, а не пример mod_rewrite...
Кстати, про него всё ещё никак не прочитаю...
Скачаю, напечатаю и почитаю на выходных...
92
04 июля 2008 года
Тень Пса
2.2K / / 19.10.2006
тебе даже конкретный пример уже дали ))))

wiki потому, что нет таких файлов на сервере, это тебе как пример использования mod_rewrite... неужели ты думаешь что файл http://ru.wikipedia.org/wiki/БАК существует?...
367
07 июля 2008 года
Meatcoins
303 / / 18.01.2006
Короче, mod-rewrite - это модуль Apache!
То есть это есть уже в сервере!
Чтобы сделать то, что мне так хотелось надо создать файл .htaccess и в нём написать:
 
Код:
RewriteEngine On
RewriteCond .....
RewriteRule .....
RewriteEngine Off
367
08 июля 2008 года
Meatcoins
303 / / 18.01.2006
Ничего из этого не работает почему-то!
Причём ошибка как на localhost, так и на реальном сервере!
 
Код:
RewriteEngine On
RewriteBase /experimental
RewriteCond %{REQUEST_FILENAME} == Some.php
RewriteRule ^Some.php$ Some2.php
RewriteEngine Off

 
Код:
RewriteEngine On
RewriteBase /experimental
RewriteRule ^Some.php$ Some2.php
RewriteEngine Off

 
Код:
RewriteEngine On
RewriteBase /experimental
RewriteRule ^Some.php$ Some2.php

 
Код:
RewriteEngine On
RewriteRule ^Some.php$ Some2.php
92
08 июля 2008 года
Тень Пса
2.2K / / 19.10.2006
смотри error.log, там всё должно быть ясно написано )
367
09 июля 2008 года
Meatcoins
303 / / 18.01.2006
На localhost:
 
Код:
[Sun Jun 08 10:34:40 2008] [alert] [client 127.0.0.1] D:/WebService/home/localhost/www/experimental/.htaccess: Invalid command 'RewriteEngine', perhaps misspelled or defined by a module not included in the server configuration

Invalid command 'RewriteEngine' - что делать?
Типа команды нет такой у Apache?
Типа модуля rewrite нет в Apache? Но он там должен быть по идее...
92
09 июля 2008 года
Тень Пса
2.2K / / 19.10.2006
по идее и бурундук - птичка....

а модуля по всей видимости нет.
367
10 июля 2008 года
Meatcoins
303 / / 18.01.2006
Получается, что надо Apache переустанавливать?
А если на реальном host'е этого модуля тоже нет?
Может же такое быть, то типа ку-ку - ничего не выйдет?
304
10 июля 2008 года
Fenyx
707 / / 26.01.2005
если на своем хосте модуля нет - к админам, если хостинг - к админам, если плохой хостинг - меняй хостинг :)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог