Как перенаправить на локальном доменном веб-сайте www.mydomain.com/website на www.mydomain.com

У меня есть установка простой веб-сервис (MediaWiki) в моем локальном сервере. В моем сервере DSN я установил IP-адрес на этот веб-сервер, поэтому теперь, когда я звоню в браузер (это работает только в моем доменном диапазоне IP), www.mydomain.com Я получаю веб-сайт Apache, когда я звоню www.mydomain.com/mediawiki затем мой сайт mediawiki открыт.

Я могу сделать это в браузере (все еще я whant это для работы только в доменном диапазоне), я звоню www.mydomain.com это открывается - перенаправления к www.mydomain.com/mediawiki?

1
задан 22 January 2019 в 13:18

1 ответ

Поскольку это имеет целью Вас, должен изменить содержание Виртуального конфигурационного файла Хоста по умолчанию 000-default.conf это расположено в /etc/apache2/sites-available/. Или можно создать новый Виртуальный конфигурационный файл Хоста, затем необходимо отключить 000-default.conf и включите новый.

Давайте предположим, что Вы решаете создать новый конфигурационный файл СПИДОБАРОГРАФА, позволяет, называют его my.wiki.org.conf, это должно быть расположено в /etc/apache2/sites-available/ и его содержание должно быть чем-то как:

<VirtualHost *:80>

    ServerName my.wiki.org
    ServerAdmin your-admin@email.com

    # According MWiki Manual:Security
    php_flag register_globals off

    ErrorLog ${APACHE_LOG_DIR}/my.wiki.org.error.log
    CustomLog ${APACHE_LOG_DIR}/my.wiki.org.access.log combined

    <FilesMatch "\.(cgi|shtml|phtml|php)$">
        SSLOptions +StdEnvVars
    </FilesMatch>

    <Directory /usr/lib/cgi-bin>
        SSLOptions +StdEnvVars
    </Directory>

    DocumentRoot "/var/www/my.wiki.org"

    <Directory "/var/www/my.wiki.org">  
        Options None FollowSymLinks
        #Allow .htaccess:
        AllowOverride All
        Require all granted
    </Directory>

    # According to MWiki Manual:Security
    <Directory "/var/www/my.wiki.org/images">
        Options -Indexes
        # Allow .htaccess files
        AllowOverride All
        # Serve HTML as plaintext, don't execute SHTML
        AddType text/plain .html .htm .shtml .php .phtml .php5
        # Don't run arbitrary PHP code.
        php_admin_flag engine off
        # If you've other scripting languages, disable them too.
    </Directory>

    # According to MWiki Manual:Security
    <Directory "/var/www/my.wiki.org/images/deleted">
        Deny from all           
        AllowOverride AuthConfig Limit
        Require local
    </Directory>

</VirtualHost>

Затем отключите 000-default.conf, включить my.wiki.org.conf и перезапуск (или перезагрузка) конфигурация Apache:

sudo a2dissite 000-default.conf
sudo a2ensite my.wiki.org.conf
sudo systemctl restart apache2.service

Ключевой пункт здесь - то, что Вы изменились DocumentRoot из Виртуального Хоста каталога установки MediaWiki. Я принимающий здесь этот каталог /var/www/my.wiki.org.


Кроме того, если Вы хотите вручить свои статьи Wiki my.wiki.org/wiki/Article_name, вместо my.wiki.org/index.php/Article_name, можно включить следующие строки .htaccess файл, расположенный в DocumentRoot каталог:

<ifModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^/?wiki(/.*)?$ %{DOCUMENT_ROOT}/index.php [L]

    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
    RewriteRule ^/?images/thumb/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/thumb.php?f=$1&width=$2 [L,QSA,B]

    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
    RewriteRule ^/?images/thumb/archive/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/thumb.php?f=$1&width=$2&archived=1 [L,QSA,B]
</ifModule>

И измените Ваш LocalSettings.php следующим образом:

$wgScriptPath = "";
$wgScriptExtension = ".php";
$wgArticlePath = "/wiki/$1";

Ссылки об этой дополнительной части:


В тестовых целях Вы могли добавить некоторые строки, как показанный ниже, в Вашем /etc/hosts файл для доступа к Wiki через FDQN вместо localhost или IP-адреса в LAN (больше деталей):

127.0.0.1 localhost my.wiki.org  # access my.wiki.org from the same machine
192.168.0.150 my.wiki.org        # access my.wiki.org that is hosted on another LAN machine with IP 192.168.0.150

Еще одно примечание по безопасности: для общедоступных серверов:

Чтение также:

2
ответ дан 7 December 2019 в 13:19

Другие вопросы по тегам:

Похожие вопросы: