2013-12-08 6 views
2

Я пытаюсь создать реферальную систему для своего sighnup на своем веб-сайте. Мой текущий файл htaccsess ниже

RewriteEngine On 
RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?page=$1 
RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?page=$1 
RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?page=$1 

Есть ли способ сделать/refferall/Что-то вместо просто /Something, но сохраняя нормальную /Something, а? Моя попытка ниже на реферальной. Но это только что сообщило:

Объект не найден! Запрашиваемый URL-адрес не найден на этом сервере. Если вы указали URL вручную, проверьте правильность написания и повторите попытку. Если вы считаете, что это ошибка сервера, обратитесь к веб-мастеру.

Ошибка 404 127.0.0.1 Apache/2.4.4 (Win32) OpenSSL/1.0.1e PHP/5.5.3

================= =======================================

Моя попытка Htaccess из /referall/something

RewriteEngine On 
RewriteRule ^([a-zA-Z0-9_-]+)referal/$1 index.php?refferal=$1 
RewriteRule ^([a-zA-Z0-9_-]+)/referall/$1 index.php?refferal=$1 
RewriteRule ^([a-zA-Z0-9_-]+)referall/$1 index.php?refferal=$1 

Полная, с обоих

RewriteEngine On 
RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?page=$1 
RewriteRule ^([a-zA-Z0-9_-]+)/$ index.php?page=$1 
RewriteRule ^([a-zA-Z0-9_-]+)$ index.php?page=$1 

RewriteEngine On 
RewriteRule ^([a-zA-Z0-9_-]+)referal/$1 index.php?refferal=$1 
RewriteRule ^([a-zA-Z0-9_-]+)/referall/$1 index.php?refferal=$1 
RewriteRule ^([a-zA-Z0-9_-]+)referall/$1 index.php?refferal=$1 
+0

Отмечу, что вы используете как реферал, так и refferal в htaccess. Реферал очевиден, но это может вызвать проблемы. – edwardmp

ответ

2

([a-zA-Z0-9_-]+) означает 1 руду больше символов (указанного типа в скобках).

Что вам нужно следующее Htaccess (оптимизирован существующей часть немного)

RewriteEngine On 
RewriteRule ^([a-zA-Z0-9_-]+)/?$ index.php?page=$1 
RewriteRule ^referal/([a-zA-Z0-9_-]+)/?$ index.php?referral=$1 

Примечания: у вас есть какие-то типы в направлении (это одиночный е, холостая л).

Смежные вопросы