<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Poetry of Programming &#187; vhost</title>
	<atom:link href="http://www.poetryofprogramming.com/pl/tag/vhost/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.poetryofprogramming.com</link>
	<description>Because coding is art</description>
	<lastBuildDate>Wed, 15 Apr 2009 15:05:23 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.1</generator>
	<language>pl</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Konfiguracja web serwera tak by zyskał dostęp do katalogu symfony_data/web/sf/</title>
		<link>http://www.poetryofprogramming.com/pl/symfony/setting-the-web-server-to-gain-access-to-symfony_datawebsf-directory/</link>
		<comments>http://www.poetryofprogramming.com/pl/symfony/setting-the-web-server-to-gain-access-to-symfony_datawebsf-directory/#comments</comments>
		<pubDate>Mon, 08 Dec 2008 16:56:29 +0000</pubDate>
		<dc:creator>Krzysztof Karolczak</dc:creator>
				<category><![CDATA[Instalacja]]></category>
		<category><![CDATA[Symfony]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Symfony 1.0]]></category>
		<category><![CDATA[Symfony 1.1]]></category>
		<category><![CDATA[Symfony 1.2]]></category>
		<category><![CDATA[vhost]]></category>

		<guid isPermaLink="false">http://www.poetryofprogramming.com/?p=25</guid>
		<description><![CDATA[Radość z uruchomienia pierwszego projektu w Symfony bardzo często rozwiewana jest następującym komunikatem wyświetlanym na stronie:
Congratulations! You have successfully created your symfony project.
Project setup successful
This project uses the symfony libraries. If you see no image in this page, you may need to configure your web server so that it gains access to the symfony_data/web/sf/ directory.
Prawidłowa [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><span class="MsgBodyText">Radość z uruchomienia pierwszego projektu w Symfony bardzo często rozwiewana jest następującym komunikatem wyświetlanym na stronie:</span></p>
<p style="padding-left: 30px;"><em>Congratulations! You have successfully created your symfony project.</em></p>
<p style="padding-left: 30px;"><em>Project setup successful</em></p>
<p style="padding-left: 30px;"><em>This project uses the symfony libraries. If you see no image in this page, you may need to configure your web server so that it gains access to the symfony_data/web/sf/ directory.</em></p>
<p style="text-align: justify;">Prawidłowa konfiguracja serwera www wydaje się najbardziej problematyczną częścią instalacji tego frameworka. Całe szczęście nie jest ona tak trudna jak może się wydawać. Ten krótki przewodnik opisuje dwie metody pozwalające szybko i sprawnie ustawić Apacha tak by polubił Symfony <img src='http://www.poetryofprogramming.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> .<span id="more-25"></span></p>
<p style="text-align: justify;">Zakładam że posiadacie poprawnie zainstalowaną Symfony (jeśli nie <strong><a href="http://www.poetryofprogramming.com/pl/symfony/install-symfony-framework-xp-vista-wamp/" target="_blank">opis instalacji znajduje się tu</a></strong>). Ja osobiście pracuje na serwerze www zainstalowanego z paczki <strong><a href="http://www.wampserver.com/en/" target="_blank">WAMP</a> </strong>(Apache+MySQL+PHP) i taką instalację odzwierciedlają ścieżki, którymi posługuję się w przykładach.</p>
<p><strong>Sposób 1 &#8211; ustawianie virtual hosta</strong></p>
<p><strong></strong></p>
<p style="text-align: justify;">Stworzenie dla każdego swojego projektu w Symfony wirtualnego hosta wydaje się najlepszym sposobem ich zarządzania w fazie tworzenia.</p>
<p style="text-align: justify;">Zatem do dzieła &#8211; najpierw potrzebujemy znaleźć katalog zawierający pliki konfiguracyjne Apacha (u mnie będzie to <em>C:\wamp\bin\apache\apache2.2.6\conf</em>) i otworzyć <em>httpd-vhosts.conf</em> (który jest w podkatalogu <em>extra</em> &#8211; <em>C:\wamp\bin\apache\apache2.2.6\conf\extra</em>). W nim należy usunąć lub zakomentować (dodając &#8216;#&#8217; na początku linijki) wszystkie linie co do których nie mamy pewności co robią <img src='http://www.poetryofprogramming.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  &#8211; jeśli nie my je napisaliśmy to są to pewnie tylko przykłady konfiguracji <em>vhostów</em>).</p>
<p class="note" style="text-align: justify;">W Symfony 1.2 (1.1 może też?) przykładowy plik z konfiguracją <em>vhosta</em> jest tworzony dla każdego projektu który wygenerujesz. Można go znaleźć pod <em>config/vhost.sample</em> &#8211; i oczywiście może być on wykorzystany zamiast kodu który znajduje się w przykładzie poniżej.</p>
<p style="text-align: justify;">Zatem na końcu naszego pliku dodajemy następujące linijki (oczywiście to tylko jeden z wielu sposobów konfiguracji &#8211; można znaleźć masę innych przykładów ustawień <em>vhostów</em> &#8211; wszystke są dobre, jeśli tylko działają, prawda? <img src='http://www.poetryofprogramming.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ):</p>
<p style="padding-left: 30px;"><em>NameVirtualHost *:80</em></p>
<p style="padding-left: 30px;"><em>Listen 127.0.0.2:80</em></p>
<p style="padding-left: 30px;"><em>&lt;VirtualHost 127.0.0.2:80&gt;</em></p>
<p style="padding-left: 60px;"><em>ServerName your_application_name</em><em><br />
 DocumentRoot &#8220;c:\wamp\www\your_project\web&#8221;<br />
 </em><em>DirectoryIndex index.php<br />
 </em></p>
<p style="padding-left: 60px;"><em>&lt;Directory &#8220;c:\wamp\www\</em><em>your_project\</em><em>web&#8221;&gt;</em></p>
<p style="padding-left: 90px;"><em>AllowOverride All<br />
 Allow from All</em></p>
<p style="padding-left: 60px;"><em>&lt;/Directory&gt;</em></p>
<p style="padding-left: 60px;"><em>Alias /sf &#8220;c:\wamp\bin\php\php5.2.5\PEAR\data\symfony\web\sf&#8221;</em></p>
<p style="padding-left: 60px;"><em>&lt;Directory &#8220;c:\wamp\bin\php\php5.2.5\PEAR\data\symfony\web\sf&#8221;&gt;</em></p>
<p style="padding-left: 90px;"><em>AllowOverride All</em><br />
 <em>Allow from All</em></p>
<p style="padding-left: 60px;"><em>&lt;/Directory&gt;</em></p>
<p style="padding-left: 30px;"><em>&lt;/VirtualHost&gt;</em></p>
<p style="text-align: center;"><script type="text/javascript"><!--
google_ad_client = "pub-5856107143683355";
google_ad_slot = "0824560404";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</p>
<p style="text-align: justify;">Oczywiście w linijkach <em>&#8221; Alias /sf &#8220;c:\wamp\bin\php\php5.2.5\PEAR\data\symfony\web\sf&#8221;</em> &#8221; i<em> &#8221; </em><em>&lt;Directory &#8220;c:\wamp\bin\php\php5.2.5\PEAR\data\symfony\web\sf&#8221;&gt;</em><em> &#8221; </em>należy zastąpić ścieżki poprawną ścieżką do katalogu symfony data. Analogicznie w linijkach <em>&#8221; </em><em>DocumentRoot &#8220;c:\wamp\www\your_project\web&#8221;</em><em> &#8221; </em>oraz<em> </em><em>&#8221; &lt;Directory &#8220;c:\wamp\www\your_project\web&#8221;&gt; &#8221; </em>należy umieścić ścieżkę do katalogu <em>web</em> swojego projektu.</p>
<p style="text-align: justify;">Powinniśmy też określić własną nazwę wirtualnego hosta umieszczając ją zamiast <em>your_server_name</em> w linijce <em>&#8216;ServerName your_server_name&#8217;</em><em>.</em></p>
<p style="text-align: justify;">Teraz musimy upewnić się, że w pliku <em>httpd.conf</em><em> </em>(główny plik konfiguracyjny Apacha, który u mnie znajduje się w katalogu   <em>C:\wamp\bin\apache\apache2.2.6\conf) </em>linijka &#8216;<em>Include conf/extra/httpd-vhosts.conf</em>&#8216; nie jest zakomentowana (nie ma &#8216;#&#8217; przed nią).</p>
<p style="text-align: justify;">Pozostaje nam już tylko zadeklarować własną domenę lokalnie przez dodanie linijki &#8216;<em>127.0.0.2 </em><em>your_server_name&#8217;</em> (oczywiście zamiast <em>your_server_name</em> wpisz wcześniej zdefiniowaną nazwę wirtualnego hosta) ma końcu pliku <em>host</em> (<em>C:\WINDOWS\system32\drivers\etc</em>) . Linijka &#8216;<em>127.0.0.1 localhost</em>&#8216; powinna być pierwszą linijką pliku <em>host.</em> A BTW &#8211; jego edycja może wymagać uprawnień administratora.</p>
<p style="text-align: justify;">Teraz &#8211; po zresetowaniu Apacha &#8211; jeśli wpiszemy w przeglądarce http://<em>your_server_name</em>/ nasza strona powitalna Symfony powinna zawierać wszystkie obrazki.</p>
<p style="text-align: center;"><script type="text/javascript"><!--
google_ad_client = "pub-5856107143683355";
google_ad_slot = "0824560404";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</p>
<p><strong>Sposób 2 &#8211; zamrażanie projektu</strong></p>
<p style="text-align: justify;">Możemy otrzymać gotową do wdrożenia paczkę z naszym projektem przez użycie komendy &#8216;<em>freeze</em>&#8216; &#8211; kopiuje ona wszystkie pliki Symfony do naszego projektu, również te &#8220;brakujące&#8221; z katalogu <em>web/sf</em>. Wystarczy w katalogu projektu wykonać polecenie:</p>
<p style="padding-left: 30px;"><em>symfony freeze [c:/sciezka/do/katalogu/symfony/data]</em></p>
<p style="text-align: justify;"><em>Freeze</em> zmienia także niektóre scieżki określone w konfiguracji, więc nasz projekt teraz będzie odwoływał się do bibliotek Symfony umieszczonych w naszym projekcie a nie tych globalnych. Oczywistym minusem tego rozwiązania jest konieczność zrobienia <em>unfreeze</em> (polecenie przeciwne do <em>freeze</em>) i ponownego <em>freeze</em> dla wszystkich swoich projektów po uaktualnieniu Symfony. Mogą się pojawić również problemy ze ścieżkami jeśli nasz projekt nie będzie znajdował się głównym katalogu naszego serwerwa WWW.</p>
<p style="text-align: center;"><script type="text/javascript"><!--
google_ad_client = "pub-5856107143683355";
google_ad_slot = "0824560404";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</p>
<p><strong>Sposób 3 &#8211; ten głupi <img src='http://www.poetryofprogramming.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  </strong></p>
<p style="text-align: justify;">Jeśli żadna z powyższych metod nie działa dla Ciebie &#8211; zawsze można spróbować skopiować zawartość katalogu <em>ścieżka_do_symfony_data/web/sf/ </em>do  <em>twój_projekt/web/</em> (zatem w moim wypadku byłoby to przeniesienie plików z katalogu <em>C:\wamp\bin\php\php5.2.5\PEAR\data\symfony\web\sf </em>do <em>C:\wamp\www\twoj_projekt\web</em>). Nie jest to oczywiście najczystsze rozwiązanie &#8211; jednym z miusów jest to, że po updacie Symfony może się okazać, że będziemy musieli przekopiować ten folder ręcznie do wszystkich swoich projektów i pojawią się zapewne problemy ze ścieżkami &#8211; przy korzystaniu z zasobów pluginów lub przy bezwględnym adresowaniu zasobów (choć jeśli zawsze będziemy korzystać z helperów symfony do generowania ścieżek nie powinno to być żadnym problemem).</p>
<p style="text-align: center;"><script type="text/javascript"><!--
google_ad_client = "pub-5856107143683355";
google_ad_slot = "0824560404";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</p>
<p><!--more--></p>
]]></content:encoded>
			<wfw:commentRss>http://www.poetryofprogramming.com/pl/symfony/setting-the-web-server-to-gain-access-to-symfony_datawebsf-directory/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
	</channel>
</rss>
