1 | |
Location15.04.2019, 14:27. Показов 1035. Ответов 8
Добрый день уважаемые коллеги!
С недавних пор начал юзать nginx Столкнулся с проблемой location. Собственно проблема заключается в следующем: Вот как расположены директории в корне сайта. /admin index.php .. /cms .. /general index.php .. index.php запросы выполняю вот так. mysite.com/admin/ - это админка mysite.com/gneral/ - это для общих нужд mysite.com - index.php в корне сайта в nginx запросы с любым URL всегда отправляются index.php в корень сайта. Как сделать так что бы это работало как в Apache до этого ? Или переписать логику так что бы все запросы проходили через корневой index.php??? Спасибо!
0
|
15.04.2019, 14:27 | |
Ответы с готовыми решениями:
8
Настрока location location в nginx установка заголовоков в location Арифметические действия в location {} |
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
15.04.2019, 14:43 | 2 |
Код
try_files $uri $uri/index.php /index.php;
1
|
15.04.2019, 15:19 [ТС] | 3 | |||||
Jewbacabra, Вот отрывок из конфига.
заменил на try_files $uri $uri/index.php /index.php; браузер теперь пытается сохранить файл (( Добавлено через 7 минут Jewbacabra, Всё ровно открывает корневой index.php
0
|
1127 / 678 / 408
Регистрация: 07.11.2015
Сообщений: 1,088
|
|
15.04.2019, 17:16 | 4 |
Popryduhin_, там в location @php нужно добавить
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
1
|
1127 / 678 / 408
Регистрация: 07.11.2015
Сообщений: 1,088
|
|
15.04.2019, 20:28 | 6 |
Popryduhin_, если в try_files нужны GET параметры, то добавь $args.
Код
try_files $uri $uri/ /index.php$is_args$args;
1
|
15.04.2019, 20:40 [ТС] | 7 | |||||
Что то идёт не так...
И вроде бы бы сохраняет параметры, но... вот эта ссылка работает //dev.mysite.com/method/product.getProducts?category_id=122&offset=0&count=100&lang=ru эта ссылка работает с корневым index.php //dev.mysite.com/index.php а эта нет //dev.mysite.com/general/language.getPackage?env=cms&packages=main,catalog,message,shop,account,profile&l ang=ru //dev.mysite.com/general/index.php если я запрашиваю следующим образом //dev.mysite.com/general/index.php всё работает, а если //dev.mysite.com/general/language.getPackage уже нет.
0
|
1127 / 678 / 408
Регистрация: 07.11.2015
Сообщений: 1,088
|
|
15.04.2019, 22:01 | 8 |
Любые запросы к /general/ отправить в /general/index.php можно так:
Код
rewrite ^/(general)/ /$1/index.php; Если в папке /general/ есть файлы которые нужно раздавать, то так: Код
location /general/ { try_files $uri /general/index.php?$args; } location / { try_files $uri $uri/ /index.php?$args; } location ~ [^/]\.ph(p\d*|tml)$ { fastcgi_index index.php; fastcgi_param PHP_ADMIN_VALUE "sendmail_path = /usr/sbin/sendmail -t -i -f webmaster@dev.mysite.com"; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass unix:/var/www/php-fpm/rit.sock; fastcgi_split_path_info ^((?U).+\.ph(?:p\d*|tml))(/?.+)$; try_files $uri =404; include fastcgi_params; }
1
|
16.04.2019, 22:49 [ТС] | 9 |
Всем спасибо!
Всё стало работать
0
|
16.04.2019, 22:49 | |
16.04.2019, 22:49 | |
Помогаю со студенческими работами здесь
9
Не отрабатывает директива Location Не срабатывает правило в location Php как текст в одном location Ребятки, поможите с location я первый раз Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |