Мне кажется правильнее всего держать его за пределами публичной директории, т.е. скажем root /site/public а <span class="Apple-style-span" style="font-family: monospace; font-size: medium; white-space: pre; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; ">fastcgi_param  SCRIPT_FILENAME /site/private/news.php</span><br>
<br><div class="gmail_quote">22 ноября 2009 г. 15:44 пользователь  <span dir="ltr">&lt;<a href="mailto:actionmanager@gmail.com">actionmanager@gmail.com</a>&gt;</span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div><div></div><div class="h5"><br>
&gt; Здравствуйте!<br>
<br>
&gt; Вы писали 22 ноября 2009 г., 0:48:06:<br>
<br>
<br>
&gt;&gt;&gt;&gt; есть следующий конфиг:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; location /news/ {<br>
&gt;&gt;&gt;&gt;   root   /home/<a href="http://site.ru" target="_blank">site.ru</a>;<br>
&gt;&gt;&gt;&gt;   rewrite &quot;^/news/((\d{4}))/?&quot; /news.php?year=$1 last;<br>
&gt;&gt;&gt;&gt;   rewrite &quot;^/news/view/((\d{2,5}))/?&quot; /news.php?view=$1 last;<br>
&gt;&gt;&gt;&gt;   rewrite ^/news/$ /news.php last;<br>
&gt;&gt;&gt;&gt; }<br>
<br>
&gt; Ну, как-бы это не конфиг, а часть конфига, которая не описывает, как<br>
&gt; будет обрабатываться запрос /news.php.<br>
<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; всё работает, но необходимо запретить прямой вызов файла news.php<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; <a href="http://site.ru/news.php" target="_blank">http://site.ru/news.php</a><br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; посоветуйте пожалуйста как правильно это сделать.<br>
<br>
&gt;&gt;&gt; location = /news.php {<br>
&gt;&gt;&gt;         internal;<br>
&gt;&gt;&gt; }<br>
<br>
<br>
&gt;&gt; неа, не хочет(<br>
&gt;&gt;     404 выдаёт на news.php и тут везде:<br>
<br>
&gt;&gt;    <a href="http://site.ru/news/2009/" target="_blank">http://site.ru/news/2009/</a><br>
&gt;&gt;    <a href="http://site.ru/news/view/20/" target="_blank">http://site.ru/news/view/20/</a><br>
&gt;&gt;    <a href="http://site.ru/news/" target="_blank">http://site.ru/news/</a><br>
<br>
<br>
&gt; Наверное требуется дописать в локейшн =/news.php проброс запроса на<br>
&gt; исполнение соответствующими средствами (proxy_pass,fastcgi_pass, etc) ?<br>
<br>
&gt; Использовать ответы стоит не как абсолютно точный<br>
&gt; рецепт, а как направление к размышлению. Вы же совета просили?<br>
<br>
<br>
<br>
</div></div>точно, спасибо ;)<br>
<br>
<br>
</blockquote></div><br>