Всем добра! Сайт типо MVC, есть роутинг вида: PHP: 'cabinet' => 'account/cabinet', где 'cabinet' - ссылка на сайте 'account/cabinet' - имя контроллера и экшена .htaccess Спойлер: .htaccess PHP: RewriteEngine on RewriteCond %{HTTP_HOST} ^www\.(.*) [NC] RewriteRule ^(.*)$ http://%1/$1 [R=301,L] Options +FollowSymlinks RewriteCond %{REQUEST_FILENAME} !-d #RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !^/assets/ RewriteRule .* index.php [L,QSA] <ifModule mod_expires.c> ExpiresActive On ExpiresDefault "access plus 5 seconds" ExpiresByType text/html "access plus 10 seconds" ExpiresByType image/jpg "access 1 month" ExpiresByType image/gif "access 1 month" ExpiresByType image/jpeg "access 1 month" ExpiresByType image/png "access 1 month" ExpiresByType text/css "access 1 month" ExpiresByType application/x-javascript "access plus 1 month" ExpiresByType text/javascript "access plus 1 month" ExpiresByType application/javascript "access plus 2 week" ExpiresByType image/x-icon "access plus 2 month" ExpiresByType image/icon "access plus 2 month" ExpiresByType application/x-ico "access plus 2 month" ExpiresByType application/ico "access plus 2 month" </ifModule> php_value default_charset utf-8 AddType 'text/html; charset=utf-8' .html .htm .shtml Буду благодарен за любую подсказку.
В файле нет «блокировки» по протоколу и т.п. Прикрепляйте сайт и к HTTP-хосту, прописав в его конфиге вилку: пропускать запрос к исключенной странице, либо делать, например, редирект на HTTPS-хост (с наследованием путей). --- Добавлено --- К «кабинету» обычно добавляют «SSL», а не убирают
Просто нужна одна страница без SSL, везде будет. --- Добавлено --- Да, я знаю. Кабинет и весь сайт будет с сертификатом. Только одну страницу без SSL сделать и все.
@webog http https это два разных порта два разных сайта два разных конфига. Создай конфиг для http и дай доступ только к одному файлу
Блин, объясни, какую проблему хочешь решить. А не то, каким ты видишь решение. Есть вероятность, что то, что ты делаешь - неправильно, и есть более верный путь.
Если нет редиректов на https, то поставь ссылку с http, типа: <a href="http://ssssssssss">ssssssssss</a> в чем проблема-то?
Показать сайт во фрейме. Беда в том, что если сайт с SSL, то сайт без SSL во фрейме не покажется. Нужно быть на одной волне или все без или все с SSL. --- Добавлено --- Спойлер: code PHP: function __construct() { #$query_str = parse_url($url); #$protocol = $query_str['scheme']; $actual_link = (isset($_SERVER['HTTPS']) ? "https" : "http"); if ($actual_link == 'https') { $routesPath = ROOT . '/config/routes.php'; }elseif($actual_link == 'http'){ echo "string"; $routesPath = ROOT . 'config/routes_http.php'; }else{ $routesPath = array(); } #$routesPath = ROOT . '/config/routes.php'; $this->routes = include($routesPath); } Пробовал вот так, но не то. ссылка все равно с сертификатом открывается.
nospiou, тебе дал нормальный ответ и подсказал решение. Создавай отдельный конфиг, перенаправляй с https на http
@webog nginx например 80 - http Код (Text): server { listen 80; server_name www.example.com; ... } 443 - https Код (Text): server { listen 443 ssl; server_name www.example.com; ... } 80 + 443 - http + https Код (Text): server { listen 80; listen 443 ssl; server_name www.example.com; ... }
Для сервера нет никаких сайтов есть ip и порт ну и доменное имя разные порты это уже разные сайты Судя по этой строчке у тебя в nginx или apache что то вроде Код (Text): server { listen 80 default_server; listen [::]:80 default_server; server_name example.com www.example.com; return 301 https://$server_name$request_uri; } Убери редирект и будет доступ по http и по https а дальше уже .htaccess настроишь Но лучше как в 3 варианте что бы все остальное не настраивать
@marsik В большинстве случаев когда ставят apache сверху еще стоит nginx как проксирующий сервер nginx -> apache -> .htaccess
У него про nginx вроде тоже ничего не сказано, одни догадки)) Про Nginx только что он крут, но это все знают)))
Nginx - упорото-статический сервер, не могущий в динамический контент. Вот крутость и кончилась. Знай инструментарий, а не "он крут, все знают". Его ставят перед апачами не потому, что "он крут", а потому, что он, простой как три рубля, и заточенный под статику, которая составляет основную массу запросов. При этом запросы на динамический контент он проксирует апачам/чему-нибудь еще, получает от них уже статичный ответ и отдает его клиенту. Апач, как сервер, в разы круче и функциональнее, к слову. Но, при этом, и работа его стоит дороже. И дергать его на отдачу статики - преступление. Вот и разделяют между ними обязанности. Каждый делает то, в чем он крут, а не просто "один крут, другой не крут".
@Fell-x27 nginx + php-fpm или swoole или еще куча всего... Сервер и должен быть сервером. Apache без модуля php это тоже статика.
Апач без модуля пхп работать может в другом режиме, и исполнять многопоточность не хуже (ладно, чуть хуже), чем Nginx. Другое дело, что он и окромя пхп много чего умеет веселого.
Если для тебя вопрос выбора технологии заключается в том, кто что где сказал, то лучше оставить как есть, все норм.