Существует множество руководств по написанию правил перезаписи Nginx для имитации файла .htaccess в Apache, но я не могу с уверенностью сказать, что знаю, как называется или называется этот так называемый конфигурационный файл Nginx. Я специально ищу конфигурационный файл Nginx, который позволяет вам писать путь к серверу и директивы PHP. Я использую Ubuntu 12 linux и Codeigniter в качестве своего PHP фреймворка.
Вот что я знаю до сих пор:
- Этот файл:
/etc/nginx/nginx.conf
несмотря на его заманчивое имя, очевидно, не место для директив сервера. - Этот файл:
/etc/nginx/sites-available/default
кажется, что мне нужно (я могу генерировать ошибки php, специфичные для моего приложения), но я не могу получить правильную маршрутизацию пути, специфичную для Codeigniter. Прежде всего, является ли этот файл «config» / .htaccess эквивалентом, о котором все говорят?
php
apache-2.2
.htaccess
codeigniter
nginx
тим петерсон
источник
источник
nginx -V
которую вы можете найти в руководстве с помощьюman nginx
.-V
Опция документирована как «-V Вывести версию Nginx, компилятор версии и параметры сценария конфигурации.». Еслиnginx
его нет в вашем пути, используйтеwhich nginx
которого возвращает полный путь к nginx$(which nginx) -V
Ответы:
Я использую PHP с nginx на моем сервере разработки со следующей конфигурацией:
в
/etc/nginx/nginx.conf
я добавил:include /etc/nginx/sites-enabled/*;
до последнего}
.выполните следующие команды для создания конфигурации вашего сайта:
отредактируйте конфигурацию сайта, некоторые возможные конфигурации (это то, что я упоминал в моей настройке): http://kbeezie.com/view/nginx-configuration-examples/
ссылка на доступный сайт, чтобы включить его
имейте в виду, что вы можете включать файлы в конфигурации практически в любом месте, это упрощает создание нескольких сайтов, когда вы хотите объединить одинаковые конфигурации.
Да, .htaccess можно сравнить с
server{}
блоком в nginx, но они также очень разные. У nginx гораздо более простой подход к разбору конфигурации, и он не будет сканировать каталоги сайтов на предмет дополнительной конфигурации, только то, что видит nginx.conf.источник
/etc/nginx/nginx.conf
файл уже естьinclude /etc/nginx/sites-enabled/*;
в самом конце. Похоже, эти 2 файла разговаривают друг с другом на моем сервере, и теперь я имею дело с проблемами, связанными с Codeigniter. Вы используете codeigniter? Есть некоторая странность пути, с которой мне нужно справиться ...root
параметр. Не стесняйтесь проверять мои вопросы, если вам нужно вдохновение.