Назад | Перейти на главную страницу

регулярное выражение электронной почты htaccess

Пытаюсь написать скороговорку таким образом, чтобы эта ссылка:

http://www.mysite.com/link/go/emailadress@gmail.com

интерпретируется так:

http://www.mysite.com/process.php?email=emailadress@gmail.com

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

Это то, что я написал в моем файле .htaccess, но не работал:

Options +FollowSymlinks
RewriteEngine on 
RewriteRule    ^link/go/overview/([A-Za-z0-9-]+)$    /process.php?email=$1    [NC,L]

Спасибо

RewriteRule link/go/(.*)$ process.php?email=$1

Кажется, это работает. Вы должны выполнить проверку электронной почты в process.php, а не в .htaccess правило для удобства чтения (плюс, вы можете, по крайней мере, иметь красивое сообщение об ошибке на странице).

Это работает, потому что все, что после link/go/ будет соответствовать (. соответствует любому символу, поэтому .* означает соответствие любому символу столько раз, сколько возможно, и (.*) означает сохранить это в $1 - The $ в конце означает конец строки, поэтому он будет совпадать до конца).

То, что вы пробовали, не сработает, потому что [A-Za-z0-9-]+ будут соответствовать только буквы и цифры, нет @ или ..