Ответы пользователя по тегу Apache HTTP Server
  • Как превратить ссылку /help.php?page=somePage в /help/somePage? (apache mod_rewrite)?

    Koa
    @Koa
    Вот как сделано у меня

    Есть в корне файлы:

    .htpaccess
    AddDefaultCharset utf-8
    RewriteEngine on
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^(.*)$ ./index.php


    setting.php
    # Запуск
    session_start();
    header('Content-Type: text/html; charset=utf-8');
    # Безопасное подключение (проверка)
    defined('_JEXEC') or header("Location: /error/");
        
        # Функция: обработка URL
        function URL($numb){
            
            $url = explode("/", $_SERVER['REQUEST_URI']);
            return preg_replace("/[^a-z0-9]/","",$url[$numb]);
            
        }


    index.php
    # Безопасное подключение (установка кода)
    	define('_JEXEC',1);
    	
    	# Инклюды
    	include("settings.php");
    	
    	# Структура сайта
    	switch(URL(1)){
    
    		# Главная страница
    		case "":
    		include("pages/index.php");
    		break;
    
    		# Ошибка
    		case "error":
    		include("pages/error.php");
    		break;
    		
    		# Страница по умолчанию (ошибка)
    		default:
    		include("pages/error.php");
    		break;
    
    	}


    Обращаемся к функции URL() и проверяем где находимся. Т.е. если http://site.ru/help/ - инклюдим (pages/help.php) иначе (pages/error.php)
    Ответ написан
    Комментировать