আমার প্রথমবার Nginx ব্যবহার করে, তবে আমি আপাচি এবং লিনাক্সের সাথে বেশি পরিচিত। আমি একটি বিদ্যমান প্রকল্প ব্যবহার করছি এবং যখনই আমি index.php দেখার চেষ্টা করছি আমি একটি 404 ফাইল পাইনি।
এখানে অ্যাক্সেস.লগ এন্ট্রি রয়েছে:
2013/06/19 16:23:23 [error] 2216#0: *1 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: 127.0.0.1, server: localhost, request: "GET /index.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "www.ordercloud.lh"
এবং এখানে সাইট-উপলভ্য ফাইলটি রয়েছে:
server {
set $host_path "/home/willem/git/console/www";
access_log /www/logs/console-access.log main;
server_name console.ordercloud;
root $host_path/htdocs;
set $yii_bootstrap "index.php";
charset utf-8;
location / {
index index.html $yii_bootstrap;
try_files $uri $uri/ /$yii_bootstrap?$args;
}
location ~ ^/(protected|framework|themes/\w+/views) {
deny all;
}
#avoid processing of calls to unexisting static files by yii
location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
try_files $uri =404;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php {
fastcgi_split_path_info ^(.+\.php)(.*)$;
#let yii catch the calls to unexising PHP files
set $fsn /$yii_bootstrap;
if (-f $document_root$fastcgi_script_name){
set $fsn $fastcgi_script_name;
}
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fsn;
#PATH_INFO and PATH_TRANSLATED can be omitted, but RFC 3875 specifies them for CGI
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fsn;
}
location ~ /\.ht {
deny all;
}
}
আমার / হোম / উইলেম / গিট / কনসোলের মালিকানা www-ডেটা: www-ডেটা (আমার ওয়েব ব্যবহারকারী পিএইচপি ইত্যাদি চালাচ্ছেন) এবং হতাশার বাইরে আমি 77 777 অনুমতি দিয়েছি ...
আমার সর্বোত্তম অনুমান যে কনফিগারেশনে কিছু ভুল আছে তবে আমি তা বুঝতে পারি না ...
আপডেট করুন
তাই আমি এটিকে সরিয়ে নিয়েছি /var/www/
এবং আরও অনেক বেসিক কনফিগার ব্যবহার করেছি:
server {
#listen 80; ## listen for ipv4; this line is default and implied
#listen [::]:80 default ipv6only=on; ## listen for ipv6
root /var/www/;
index index.html index.htm;
# Make site accessible from http://localhost/
server_name console.ordercloud;
location / {
root /var/www/console/frontend/www/;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www;
include fastcgi_params;
}
location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
try_files $uri =404;
}
location /doc/ {
alias /usr/share/doc/;
autoindex on;
allow 127.0.0.1;
deny all;
}
}
এছাড়াও আমি যদি কল localhost/console/frontend/www/index.php
করি তবে আমি একটি 500 পিএইচপি পাই যার অর্থ এটি সেখানে পরিবেশিত হচ্ছে। এটি কেবল কনসোল.অর্ডারক্লাউড সরবরাহ করছে না ...