2013-12-02 4 views
1

Большинство людей, похоже, спрашивает о преобразовании .htaccess в vhost.conf. Мне нужно, чтобы все было наоборот. У меня есть существующий файл vhost.conf который выглядит следующим образом ....Convert vhost.conf to .htaccess

ServerAlias base1.mydomain.com 
ServerAlias base2.mydomain.com 
ServerAlias base3.mydomain.com 
ServerAlias www.mysite1.co.uk 
ServerAlias www.mysite2.co.uk 


    RewriteEngine on 

    RewriteMap lowercase int:tolower 
    RewriteCond %{REQUEST_URI} !^/images/ 
    RewriteCond %{REQUEST_URI} !^/code/ 
    RewriteCond %{REQUEST_URI} !^/php/ 
    RewriteCond %{REQUEST_URI} !^/php-bin/ 
    RewriteCond %{REQUEST_URI} !^/syles/ 
    RewriteCond %{REQUEST_URI} !^/js/ 
    RewriteCond %{REQUEST_URI} !^/jquery/ 
    RewriteRule ^/(.*)$ /var/www/vhosts/mydomain.com/subdomains/${lowercase:%{SERVER_NAME}}/htdocs/$1 

    Alias /scripts/ "/var/www/vhosts/mydomain.com/subdomains/ysite/V4_0_1/scripts/" 
    Alias /php/ "/var/www/vhosts/mydomain.com/subdomains/ysite/V4_0_1/php-bin/" 

<Files ~ (\.phtml)> 
      SetHandler fcgid-script 
      FCGIWrapper /var/www/cgi-bin/cgi_wrapper/cgi_wrapper .phtml 
      Options +ExecCGI 
      allow from all 
    </Files> 

    <Files ~ (\.php)> 
      SetHandler fcgid-script 
      FCGIWrapper /var/www/cgi-bin/cgi_wrapper/cgi_wrapper .php 
      Options +ExecCGI 
      allow from all 
    </Files> 

    <Files ~ (\.php4)> 
      SetHandler fcgid-script 
      FCGIWrapper /var/www/cgi-bin/cgi_wrapper/cgi_wrapper .php4 
      Options +ExecCGI 
      allow from all 
    </Files> 

Alias /php-bin/ "/var/www/vhosts/mydomain.com/subdomains/ysite/V4_5/php-bin/" 
Alias /js/ "/var/www/vhosts/mydomain.com/subdomains/ysite/V4_5/js/" 
Alias /css/ "/var/www/vhosts/mydomain.com/subdomains/ysite/V4_5/styles/" 
Alias /jquery/ "/var/www/vhosts/mydomain.com/subdomains/ysite/V4_5/jquery/" 

Я пытаюсь преобразовать это в .htaccess файлы. Начиная с вершины, что эквивалентна команде .htaccess для serveralias?

ответ

2

Не все от vhost.conf может быть скопировано в .htaccess, поскольку все директивы не допускаются в .htaccess.

Вы можете разместить этот код в DOCUMENT_ROOT/.htaccess файле:

RewriteEngine on 

RewriteCond ${HOST_NAME} [A-Z] 
RewriteCond %{REQUEST_URI} !^/(images|code|php|php-bin|styles|js|jquery)/ 
RewriteRule ^(.*)$ http://${lowercase:%{HOST_NAME}}/$1 [L,R] 

<Files ~ (\.phtml)> 
     SetHandler fcgid-script 
     FCGIWrapper /var/www/cgi-bin/cgi_wrapper/cgi_wrapper .phtml 
     Options +ExecCGI 
     allow from all 
</Files> 

<Files ~ (\.php)> 
     SetHandler fcgid-script 
     FCGIWrapper /var/www/cgi-bin/cgi_wrapper/cgi_wrapper .php 
     Options +ExecCGI 
     allow from all 
</Files> 

<Files ~ (\.php4)> 
     SetHandler fcgid-script 
     FCGIWrapper /var/www/cgi-bin/cgi_wrapper/cgi_wrapper .php4 
     Options +ExecCGI 
     allow from all 
</Files>