संपादित करें
यह पता चला है कि मैं गलत पेड़ को संपादित करने की कोशिश कर रहा था। मुझे स्पष्ट रूप से जो करने की जरूरत है वह मेरी .conf फ़ाइल को संपादित करना है। इससे पहले कि मैं इसे पढ़ूं, my_app.conf इस तरह दिखे:
upstream backend {
server unix:/u/apps/my_app/tmp/php.sock;
}
server {
listen 80 default;
root /u/apps/my_app/www;
index index.php;
access_log /u/apps/my_app/logs/access.log;
error_log /u/apps/my_app/logs/error.log;
location / {
try_files $uri $uri/ /index.php;
}
# This location block matches anything ending in .php and sends it to
# our PHP-FPM socket, defined in the upstream block above.
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass backend;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /u/apps/my_app/www$fastcgi_script_name;
include fastcgi_params;
}
# This location block is used to view PHP-FPM stats
location ~ ^/(php_status|php_ping)$ {
fastcgi_pass backend;
fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
include fastcgi_params;
allow 127.0.0.1;
deny all;
}
# This location block is used to view nginx stats
location /nginx_status {
stub_status on;
access_log off;
allow 127.0.0.1;
deny all;
}
}
अब यह ऐसा दिखता है, और यह अभी भी काम नहीं कर रहा है:
upstream backend {
server unix:/u/apps/my_app/tmp/php.sock;
}
server {
listen 80 default;
root /u/apps/my_app/www;
index index.php;
access_log /u/apps/my_app/logs/access.log;
error_log /u/apps/my_app/logs/error.log;
location / {
try_files $uri $uri/ /index.php;
}
location /wordpress/ {
try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2 |doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ {
access_log off; log_not_found off; expires max;
}
# Uncomment one of the lines below for the appropriate caching plugin (if used).
#include global/wordpress-wp-super-cache.conf;
#include global/wordpress-w3-total-cache.conf;
# This location block matches anything ending in .php and sends it to
# our PHP-FPM socket, defined in the upstream block above.
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass backend;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /u/apps/my_app/www$fastcgi_script_name;
include fastcgi_params;
}
# This location block is used to view PHP-FPM stats
location ~ ^/(php_status|php_ping)$ {
fastcgi_pass backend;
fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
include fastcgi_params;
allow 127.0.0.1;
deny all;
}
# This location block is used to view nginx stats
location /nginx_status {
stub_status on;
access_log off;
allow 127.0.0.1;
deny all;
}
}
किसी को पता है कि मैं क्या गलत कर रहा हूँ?
END EDIT
मैंने अपने Permalinks को डिफ़ॉल्ट से /% postname% / में बदल दिया है, और अब WordPress के व्यवस्थापक पैनल के भीतर लिंक मुझे 404 त्रुटियां देते हैं - न कि WordPress 404 पृष्ठ, nginx 404 पृष्ठ। यह देखते हुए कि मुझे यह क्यों बताया गया है कि यह मेरी .htaccess फ़ाइल का संपादन होना चाहिए या मुझे यह बताकर कि वर्डप्रेस।
मैंने अपने वर्डप्रेस फ़ोल्डर में एक खाली .htaccess फ़ाइल बनाने की कोशिश की है, इसे 666 अनुमतियाँ देते हुए, उपयोगकर्ता और समूह को www-डेटा में बदल दिया और फिर permalinks- को बदलने का काम नहीं किया। तब मैंने इसे पारमिक्लिंक बदलने से पहले इसे बदल दिया:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
जब वह काम नहीं किया, मैं फिर से permalinks बदलने RewriteBase
से /wordpress/
पहले बदल गया - अभी भी कुछ भी नहीं।
मैं अपनी साइट की .conf फ़ाइल में भी जा चुका हूँ और try_files $uri $uri/ /index.php;
निम्न में बदल गया, प्रत्येक बार nginx और php5-fpm को पुनः आरंभ करता हूँ;
try_files $uri $uri/ /index.php?$query_string;
try_files $uri $uri/ /index.php?q=$request_uri;
try_files $uri $uri/ /index.php?$args;
मैं नगनेक्स के साथ एक होम सर्वर चला रहा हूं। यहाँ क्या हो रहा है के बारे में कोई विचार?