我正在尝试在服务器上安装 magento。这是我的 Vhost 文件。
server {
listen 80;
## SSL directives might go here
server_name development.magento.in ; ## Domain is here twice so server_name_in_redirect will favour the www
root /var/www/devcode/;
client_max_body_size 2M;
location / {
index index.html index.php; ## Allow a static html file to be shown first
try_files $uri $uri/ @handler; ## If missing pass the URI to Magento's front handler
expires 365d; ## Assume all files are cachable
}
if ($request_uri = /index.php) {
rewrite ^ http://$host? permanent;
}
location /app/ { deny all; }
location /includes/ { deny all; }
location /lib/ { deny all; }
location /media/downloadable/ { deny all; }
location /pkginfo/ { deny all; }
location /report/config.xml { deny all; }
location /shell/ { deny all; }
location /downloader/ { deny all; }
location /cron.php { deny all; }
location ~ .php/ { ## Forward paths like /js/index.php/x.js to relevant handler
rewrite ^(.*.php)/ $1 last;
}
location /. { ## Disable .htaccess and other hidden files
return 404;
}
location @handler { ## Magento uses a common front handler
rewrite / /index.php;
}
# serve static files directly
location ~* ^.+\.(jpg|jpeg|gif|css|png|js|ico|html|txt)$ {
# root /var/www/devcode/skin/; # I tried to added to this also but never worked
access_log off;
expires 30d;
}
location ~ \.php$
{
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_read_timeout 300;
}
}
所以通过这个配置 Nginx 显示403 用于 Css 和 js 和 Images。有趣的是,如果我删除它显示404的提供静态文件的部分。我已经尝试过 Stackoverflow 上的所有帖子。这是我的媒体和皮肤目录权限的样子
drwxr-xr-x. 23 nginx nginx 4096 Mar 22 14:32 media
drwxr-xr-x. 5 nginx nginx 4096 Mar 13 03:45 skin
任何帮助或提示都将受到高度尊重!
编辑
我的新配置文件是这样的:
server {
listen 80;
## SSL directives might go here
server_name development.magento.in ; ## Domain is here twice so server_name_in_redirect will favour the www
root /var/www/devcode/;
index index.html index.php; ## Allow a static html file to be shown first
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
access_log /var/log/nginx/development.access.log ;
error_log /var/log/nginx/development.error.log ;
client_max_body_size 2M;
location / {
try_files $uri $uri/ /index.php?$args; #@handler; ## If missing pass the URI to Magento's front handler
expires 365d; ## Assume all files are cachable
}
if ($request_uri = /index.php) {
rewrite ^ http://$host? permanent;
}
location ^~ /(app|includes|lib|media/downloadable|pkginfo|var)/ { internal; }
location /var/export/ { internal; }
location ~ .php/ { ## Forward paths like /js/index.php/x.js to relevant handler
rewrite ^(.*.php)/ $1 last;
}
location /. { ## Disable .htaccess and other hidden files
return 404;
}
# serve static files directly
location ~* ^.+\.(jpg|jpeg|gif|css|png|js|ico|html|txt)$ {
access_log off;
expires 30d;
}
location ~ \.php$
{
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param MAGE_RUN_CODE default;
fastcgi_param MAGE_RUN_TYPE store;
fastcgi_read_timeout 300;
}
}
现在我以前的问题是固定的。但现在我无法让我的网站运行。我检查了它说的 access.logHTTP 200 OK
但 index.php 没有收到任何请求。