网上找了好久没有正确的,后面直接在http://wiki.nginx.org/Drupal
上找到原文,但原文中复制过来会出现个 ‘root‘ rewrite directive is duplicate 错误和 server 第一列的错误。
对比aliyun上的预先设定的rewrite 发现它们都没有server {} 这个名,并且这个位置也在nginx -t 时报错了。
注释了报错的位置,删除了不适用于drupal 7下面的配置。
- /alidata/server/nginx/sbin/nginx
-t
设置的时候用这个测试。
最后把conf 文件也设置好,重启下。
- /alidata/server/nginx/sbin/nginx
-s reload
带上原文配置:
server_name domain.tld; #root /var/www/drupal7; ## <-- Your only path reference. # Enable compression, this will help if you have for instance advagg? module # by serving Gzip versions of the files. gzip_static on; location = /favicon.ico { log_not_found off; access_log off; } location = /robots.txt { allow all; log_not_found off; access_log off; } # This matters if you use drush prior to 5.x # After 5.x backups are stored outside the Drupal install. #location = /backup { # deny all; #} # Very rarely should these ever be accessed outside of your lan location ~* \.(txt|log)$ { allow 192.168.0.0/16; deny all; } location ~ \..*/.*\.php$ { return 403; } # No no for private location ~ ^/sites/.*/private/ { return 403; } # Block access to "hidden" files and directories whose names begin with a # period. This includes directories used by version control systems such # as Subversion or Git to store control files. location ~ (^|/)\. { return 403; } location / { # This is cool because no php is touched for static content try_files $uri @rewrite; } location @rewrite { # You have 2 options here # For D7 and above: # Clean URLs are handled in drupal_environment_initialize(). rewrite ^ /index.php; # For Drupal 6 and bwlow: # Some modules enforce no slash (/) at the end of the URL # Else this rewrite block wouldn't be needed (GlobalRedirect) #rewrite ^/(.*)$ /index.php?q=$1; } location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; #NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini include fastcgi_params; fastcgi_param SCRIPT_FILENAME $request_filename; fastcgi_intercept_errors on; fastcgi_pass unix:/tmp/phpfpm.sock; } # Fighting with Styles? This little gem is amazing. # This is for D6 #location ~ ^/sites/.*/files/imagecache/ { # This is for D7 and D8 location ~ ^/sites/.*/files/styles/ { try_files $uri @rewrite; } location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ { expires max; log_not_found off; } }
aliyun 主机Nginx 上配置Drupal 伪静态
时间: 2024-11-09 00:38:20