Это очень специфическая проблема для моего сайта хобби.
У меня есть этот код в моем htaccess:
RewriteRule ^(?!assets|404|i|chats|books|forum|blog|help|terms|policy|jobs|settings|reset|signup|signin|signout)([^/]+)$ profile_home.php?userdomain=$1 [L] RewriteRule ^(?!assets|404|i|chats|books|forum|blog|help|terms|policy|jobs|settings|reset|signup|signin|signout)([^/]+)/([^/]+)$ profile_home.php?userdomain=$1&selection=$2 [L]
Теперь это для большинства работает отлично, я могу посетить все эти ссылки (url / 404, url / i и т. Д., А также посетить (url / user1, url / user2) …
Проблема возникает от конкретного перехода к одному пользователю до сих пор, который, кажется, бросает случайный 404. Этот пользователь существует и удаляет lookahead, устраняет проблему, и пользователь может быть просмотрен, но, конечно, эти другие ссылки прерываются.
Я собираюсь предоставить примеры ссылок непосредственно для этой проблемы:
/ блог
/Форум
/ testingaccount
Все это работает отлично, но этот конкретный пользователь не работает. И я даже не могу понять, как это делается. Пользователь существует, а файлы и т. Д. Все существуют, но этот один пользователь вызывает проблему.
/ itsame или / forumerguy
В вашем случае URL-адрес, который начинается с ваших исключений, будет работать: / i … / blog …
Вы можете сделать это:
RewriteRule ^(assets|404|i|chats|books|forum|blog|help|terms|policy|jobs|settings|reset|signup|signin|signout)(/|$) - [L] RewriteRule ^([^/]+)$ profile_home.php?userdomain=$1 [L] RewriteRule ^([^/]+)/([^/]+)$ profile_home.php?userdomain=$1&selection=$2 [L]
Или, если вам нужны другие правила после (активы | 404 | i | cha …), вы можете сделать это:
RewriteCond %{REQUEST_URI} !^/(assets|404|i|chats|books|forum|blog|help|terms|policy|jobs|settings|reset|signup|signin|signout)(/|$) RewriteRule ^([^/]+)$ profile_home.php?userdomain=$1 [L] RewriteCond %{REQUEST_URI} !^/(assets|404|i|chats|books|forum|blog|help|terms|policy|jobs|settings|reset|signup|signin|signout)(/|$) RewriteRule ^([^/]+)/([^/]+)$ profile_home.php?userdomain=$1&selection=$2 [L]