codeigniter настраивает структуру папок
Моя файловая структура выглядит так:
- htdocs
-- projects // contain all my projects
--- <name-of-website> // a specific project
---- application
---- system
---- index.php
---- css
---- js
Таким образом, URL-адрес в браузере выглядит следующим образом (я также удалил index.php ):
localhost/projects/<name-of-website>
Что я хотел бы сделать, так это поместить index.php css и js внутри папки public_html, как это:
- htdocs
-- projects
--- <name-of-website>
---- application
---- system
---- public_html
----- css
----- js
----- index.php
----- .htaccess
, А также изменил пути к системе и папке приложения:
$system_path = '../system';
$application_folder = '../application';
Но когда я снова пробую URL-адрес, я не получаю доступа к странице индекса, вместо этого мне нужно перейти на http://localhost/projects/fakecms/<name-of-website>/
.
Мой вопрос в том, могу ли я сохранить структуру папок таким образом, не тормозя URL-адрес?? в основном я хочу получить доступ к index.php вот так http://localhost/projects/<name-of-website>
снова
2 answers
ИМХО, делать это на localhost
для меня, кстати, не имеет смысла:
Вместо перемещения файла index.php
вы можете переместить папку application
и system
куда-нибудь за пределы каталога htdocs
(или public_html
на сервере) и изменить пути этих двух папок в соответствии с деревом каталогов.
Обычно внутри этих двух папок находится файл .htaccess
, который предотвращает прямой доступ к файлам PHP (путем Deny from all
).
Однако перемещение этих папок за пределы Интернета root, повышает безопасность, если .htaccess
перестает работать по какой-либо причине.
Например, если ваш файл index.php
расположен в /home/public_html/project/
, папки application
и system
должны быть размещены по пути /home/
:
home
application
system
public_html
project
css
js
.htaccess
index.php
И пути будут следующими:
$system_path = '../../system';
$application_folder = '../../application';
Вы можете сделать свои css и js такими и определить свой путь в constants.php вот так
define('STYLESHEETS_PATH', 'yoururl/css/');
define('SCRIPTS_PATH', 'yoururl/js/');
При получении css вы просто echo $STYLESHEETS_PATH;
или для js echo $SCRIPTS_PATH