Как и многие веб-разработчики, мне нравится использовать .htaccess для направления всего трафика в домен через единую точку входа, когда запрос не относится к файлу, который существует в общедоступном каталоге.
Примерно так:
RewriteEngine On
# enable symbolic links
Options +FollowSymLinks
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+) index.php [L]
Это означает, что если запрос не для файла css или изображения, мой index.php получает запрос, и я могу выбрать, что делать (обслужить некоторый контент или, возможно, 404)
Отлично работает, но я наткнулся на проблему, которая может ' Кажется, это помогает мне решить.
Корень моего документа выглядит так:
asymboliclink -> /somewhere/else
css
.htaccess
img
includes
index.php
Тем не менее, Apache не видит символическую ссылку на каталог как на каталог. Он передает запрос моему index.php в корне. Я хочу отображать ссылку, как если бы это была папка, поскольку это ссылка на папку с собственным index.php. Я могу получить доступ к http://example.com/asymboliclink/index.php , набрав его в адресной строке браузера, но я хочу получить к нему доступ через http: // example.com/asymboliclink
Что мне нужно добавить в мой файл .htaccess, чтобы это произошло?