Мод Rewrite поможет apache - превратить красивые URL в приемлемые ссылки PHP - PullRequest
0 голосов
/ 20 февраля 2012

Прямо сейчас я использую это:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9a-zA-Z-]+)/?$ profile.php?userName=$1 [L]

Это работает для обычных случаев без пробелов и подчеркиваний и т. Д. ... только основы.

Мне нужно, чтобы он был достаточно открыт для персонажей - например, John_doe john-doe john doe.

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

Спасибо.

1 Ответ

0 голосов
/ 20 февраля 2012

Символ . будет соответствовать любому отдельному символу:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/?$ profile.php?userName=$1 [L]

Обратите внимание, что использование этого регулярного выражения не рекомендуется из-за целей кодирования символов (а также и SEO, но я не знаю, имеет ли это отношение к вам). Всегда лучше иметь адреса, содержащие только строчные буквы, цифры и тире (-).

Для получения дополнительной информации о регулярном выражении mod_rewrite см. эту ссылку .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...