У меня возникла проблема, которая не кажется новой или захватывающей, но из всех ответов, которые я нашел, никто не работает. Я чувствую, что программирование на .htaccess есть миллион способов решения проблемы, но я никогда не смогу найти/использовать правильный.HTACCESS: требуется переписать URL-адрес ссылки привязки URL-адрес
Я хотел бы взять уже чистый URL: http://example.com/page/link
и сделать внутреннюю перезапись на: http://example.com/page#link
Мои источники, прежде чем спросить:
http://stackoverflow.com/questions/21391449/how-to-use-sign-as-an-anchor-while-url-rewriting-with-htaccess-on-apache
http://stackoverflow.com/questions/29165917/htaccess-rewrite-url-to-hash-anchor-on-homepage
http://stackoverflow.com/questions/2686075/mod-rewrite-with-anchor-link
http://stackoverflow.com/questions/2285193/htaccess-redirect-to-page-with-anchor-link
Я перечитал все ответы и комментарии, чтобы найти решение моей конкретной проблемы. До сих пор ничего не работало. Я даже не могу получить простой тест для работы, и кажется, что переписывание вообще не работает.
Вы можете найти мой текущий файл .htaccess здесь: http://pastebin.com/xJWHq70f
ПРИМЕЧАНИЕ: веб-хостинга является Netfirms. Я отключил Nethirms по умолчанию .htaccess foolery.
Так что, чтобы повторить, я пытаюсь сделать чистый URL и дальше разбирать и переписывать со страницы/теста на страницу # test. Последняя строка в моей .htaccess действительно были
RewriteRule^о-я /(.*)$/о-я # $ 1 [NE, R] (не работает)
В теории создании ссылка на страницу с about-me/who-am-i
должен взять меня к http://example.com/about-me#who-am-i
, сохраняя при этом адресную строку, глядя, как http://example.com/about-me/who-am-i
. В это время у меня есть одна конкретная страница, на которой я бы хотел, чтобы эта перезапись была включена для страницы about-me.php.
Спасибо,
Doug
PS
Извините за не 10+ репутации, поэтому я могу поместить все ссылки обычно
UPDATE 27 Jan 2016
Дальнейшего рассмотрения и дальнейшее расследования доказывает, что я бы хотел сделать просто не могу. Нет проблем. Я переключил передачу и изменил способ работы моей навигационной системы.
Вместо этого я буду использовать страницу about-me в качестве базы и создать необходимые необходимые страницы. Поскольку на странице много текста, лучше разбить его на более приятные для чтения разделы - теперь отдельные страницы.
Используя идею, представленную William, я смог быстро собрать решение. Мой исходный код .htaccess, чтобы удалить расширение .php, а затем перенаправить расширение .php на эквивалент без расширения, был сломан и вызвал 500 ошибок. ИСПРАВЛЕНО!
Используя следующий код:
RewriteRule ^about-me/(.*) /$1 [L,NC]
Я могу иметь любой URL о-я/Статистика или о -мне/testing123 и до тех пор, как фактический stats.php или testing123.php существует в корне, он будет внутренне перенаправлен должным образом - сохраняя хороший чистый URL-адрес, а 404-й, если файл не существует.
Насколько я знаю, привязывающие метки обрабатываются на стороне клиента, чтобы позволить перейти к разделу страницы. Если вы сделаете внутреннюю переписку, клиент этого не узнает. – apokryfos