LINUX.ORG.RU

Сообщения stranger-ru

 

Битрикс, mod_rewrite и .htaccess

Форум — General

Приветствую!

В битрикс в .htaccess по дефолту:

<IfModule mod_rewrite.c>
  Options +FollowSymLinks
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-l
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$
  RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]
  RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
</IfModule>

нужно примешать туда два правила:

### 301 редирект с www на без www
 RewriteCond %{HTTP_HOST} ^www\.(.*)$
 RewriteRule ^(.*)$ http://%1/$1 [L,R=301]

### 301 редирект с /index.php на /
 RewriteCond %{REQUEST_URI} ^(.*)/$
 RewriteRule .* - [L]

 RewriteCond %{ENV:REDIRECT_STATUS} 200
 RewriteRule .* - [L]

 RewriteCond %{REQUEST_METHOD} =GET
 RewriteCond %{REQUEST_URI} ^(.*)/index.php$
 RewriteRule ^(.*)$ %1/ [R=301,L]
Будет ли верным просто такой вариант:
<IfModule mod_rewrite.c>
  Options +FollowSymLinks
  RewriteEngine On  
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-l
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$
  RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]
  RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
  
### 301 редирект с www на без www
  RewriteCond %{HTTP_HOST} ^www\.(.*)$
  RewriteRule ^(.*)$ http://%1/$1 [L,R=301]

### 301 редирект с /index.php на /
  RewriteCond %{REQUEST_URI} ^(.*)/$
  RewriteRule .* - [L]

  RewriteCond %{ENV:REDIRECT_STATUS} 200
  RewriteRule .* - [L]

  RewriteCond %{REQUEST_METHOD} =GET
  RewriteCond %{REQUEST_URI} ^(.*)/index.php$
  RewriteRule ^(.*)$ %1/ [R=301,L]  
</IfModule>
???

 ,

stranger-ru
()

Битрикс mod_rewrite и .htaccess

Форум — Web-development

Приветствую!

В битрикс в .htaccess по дефолту:

<IfModule mod_rewrite.c>
  Options +FollowSymLinks
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-l
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$
  RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]
  RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
</IfModule>

нужно примешать туда два правила:

### 301 редирект с www на без www
 RewriteCond %{HTTP_HOST} ^www\.(.*)$
 RewriteRule ^(.*)$ http://%1/$1 [L,R=301]

### 301 редирект с /index.php на /
 RewriteCond %{REQUEST_URI} ^(.*)/$
 RewriteRule .* - [L]

 RewriteCond %{ENV:REDIRECT_STATUS} 200
 RewriteRule .* - [L]

 RewriteCond %{REQUEST_METHOD} =GET
 RewriteCond %{REQUEST_URI} ^(.*)/index.php$
 RewriteRule ^(.*)$ %1/ [R=301,L]

поможите плиз, знатоки apache.

 ,

stranger-ru
()

Сколько оперативки нужно для полноценной работы в Ubuntu

Форум — General

Добрый день.

Сейчас работаю (веду веб-разработку) под Виндой, при этом у меня открыто: Виртуальная машина с веб-сервером Centos (512 мб), Несколько (около 10-ти) экземпляров PhpStorm, Chrome с парой-тройкой десятков вкладок, 1С, Photoshop, и несколько других приложений.

Все это у меня съедает порядка 10 Гб оперативки.

Думаю о смене компа и переходе на Ubuntu - поэтому задался вопросом, сколько оперативки нужно будет там под приблизительно такую же работу, как и сейчас. Коллеги, кто ведет разработку под Ubuntu, подскажите пожалуйста?

 

stranger-ru
()

Ошиба nginx при загрузке файлов

Форум — Admin

Всем привет.

С сайта загружаю картинку размером до 200kb - все нормально. С этого же сайта (с этого же интерфейса) загружаю картинку размером более 200kb - 500-ая ошибка. Смотрю в лог nginx:

2017/02/07 02:23:07 [crit] 4667#0: *110 open() "/var/lib/nginx/tmp/client_body/0000000005" failed (13: Permission denied), client: 27.157.59.203, server: myteam.ru, request: "POST /admin/slides/image/image/1 HTTP/1.1", host: "myteam.ru", referrer: "http://myteam.ru/admin/slides/1/edit"

значения в php.ini:

memory_limit = 128M
max_execution_time = 60
max_input_time = 60
upload_max_filesize = 32M
post_max_size = 100M
max_execution_time 60
max_input_time 60

Подскажите, в чем проблема?

Перемещено leave из general

 ,

stranger-ru
()

изменить пользователя от которого запускаются Nginx, PHP-FPM

Форум — Admin

Добрый день

*** CentOS 7 ***

Возникла необходимость изменить владельца директории сайта с системного nginx на обычного myuser. Если в конфигах Nginx:

user nginx;
и PHP-FPM:
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
ничего не менять, то через браузер доступ к сайту сохраняется, но при попытке загрузить файл получаю ошибку недоступности директории для сохранения загружаемого файла.

если в конфигах Nginx:

user myuser;
и PHP-FPM:
listen.owner = myuser
listen.group = myuser
listen.mode = 0660
изменить на пользователя и группу владельца директории сайта, то с доступом к сайту так-же все хорошо, но при попытке загрузить файл получаю 500-ую ошибку от NGINX.

Подскажите пожалуйста, как правильно настроить NGINX + PHP-FPM, чтобы загрузка файлов проходила (без 777), если владелец директории сайта myuser:myuser?

 ,

stranger-ru
()

Запустить SAMBA от пользователя с авторизацией

Форум — Admin

Добрый день.

*** CentOS 7 ****

Раньше подключался под пользователем nginx (/sbin/nologin) с таким конфигом:

[global]
host deny = ALL
host allow = 192.168. 127.0.0.1
workgroup = WORKGROUP
netbios name = CentOS
server string = MyServer
security = user
map to guest = Bad User
browseable = yes
public = yes
guest account = nginx
[www]
comment =  My user
path = /home/httpdocs
public = yes
readonly = no
writable = yes
guest only = yes
guest ok = yes
create mask = 0644
directory mask = 0755

все было нормально. Сейчас нужно изменить пользователя на myuser (/bin/bash), изменяю в конфиге:

[global]
....
guest account = myuser
....

при попытке перезапустить SAMBA получаю ошибку перезапуска, при journalctl -xe вижу:

Sep 14 13:54:49 my-host polkitd[650]: Unregistered Authentication Agent for unix-process:2850:20
Sep 14 13:54:49 my-host systemd[1]: smb.service: main process exited, code=exited, status=255/n/
Sep 14 13:54:49 my-host systemd[1]: Failed to start Samba SMB Daemon.

Подскажите пжл, что не так?

 ,

stranger-ru
()

Nginx перенаправление на без /

Форум — General

Добрый вечер.

*** Nginx + PHP-FPM ***

Конфиг хоста:


server {
	listen 80; 

	server_name test.local;
	root        /home/httpdocs/test.local/www;
	index index.php index.html index.htm;

	access_log  /home/httpdocs/test.local/log/access.log;
	error_log   /home/httpdocs/test.local/log/error.log;

	location / {
		try_files $uri $uri/ /index.php?$args;
		rewrite ^/(.*)/$ /$1 permanent;
	}

	location ~ \.php$ {
		fastcgi_pass unix:/var/run/php-fpm/php5-fpm.sock;
		fastcgi_index index.php;

		fastcgi_param DOCUMENT_ROOT /home/httpdocs/test.local/www/;
		fastcgi_param SCRIPT_FILENAME /home/httpdocs/test.local/www/$fastcgi_script_name;
		fastcgi_param PATH_TRANSLATED /home/httpdocs/test.local/www/$fastcgi_script_name;

		include fastcgi_params;
		fastcgi_param QUERY_STRING $query_string;
		fastcgi_param REQUEST_METHOD $request_method;
		fastcgi_param CONTENT_TYPE $content_type;
		fastcgi_param CONTENT_LENGTH $content_length;
		fastcgi_intercept_errors on;
		fastcgi_ignore_client_abort off;
		fastcgi_connect_timeout 60;
		fastcgi_send_timeout 180;
		fastcgi_read_timeout 180;
		fastcgi_buffer_size 128k;
		fastcgi_buffers 4 256k;
		fastcgi_busy_buffers_size 256k;
		fastcgi_temp_file_write_size 256k;
	}

	location ~ /\.(ht|svn|git) {
			deny  all;
	}   
}

при url: test.local/post/ получаю правильное перенаправление на test.local/post (в конце убирает слеш)

при url: test.local получаю НЕПРАВИЛЬНОЕ перенаправление на test.local/ (в конце добавляет слеш)

Подскажите пожалуйста, как подправить конфиг, чтобы эта проблема ушла?

 

stranger-ru
()

Какую Ubuntu лучше поставить и на какую виртуальную машину

Форум — General

Добрый вечер.

Раньше не имел дело с Ubuntu. Хочу поставить на VM, или на VirtualBox, или на VMware.

По поводу версии Ubuntu (нужна как полноценная десктопная версия) - вроде наметил Ubuntu 16.04 Unity, не знаю, правильно ли?

По поводу виртуальной машины, кто-то мне говорил, лучше VMware, потому что она в отличие от VirtualBox имеет полную эмуляцию, так же не знаю, так ли это?

 

stranger-ru
()

Откатить назад распаковку / установку

Форум — General

Всем привет.

Нашел одну статью про установку node.js, решил попробовать на CentOS 6. Выполнил следующие команды:

cd /tmp

wget http://nodejs.org/dist/v6.3.1/node-v6.3.1-linux-x64.tar.gz 

cd /usr/local

tar --strip-components 1 -xzf /tmp/node-v6.3.1-linux-x64.tar.gz

После последней команды ожидал, что сейчас произойдет распаковка в /usr/local, увижу процесс распаковки и после какую-то директорию в /usr/local, что-то еще. Но команда прошла без какого-либо визуального процессинга, никакой директории в /usr/local не создалось - не пойму, что произошло, но:

node -v 
выводит версию node.js, т.е. установилось.

Объясните пожалуйста, что сделала эта команда:

tar --strip-components 1 -xzf /tmp/node-v6.3.1-linux-x64.tar.gz
и как теперь откатить / удалить, распакованный / установленный node.js?

 ,

stranger-ru
()

Оптимальные конфиги для веб-сервера на 512M оперативки

Форум — General

Всем привет.

Имеется веб-сервер:

Centos 7.2.1511, Nginx 1.6.3, PHP-FPM 7.0.8, PHP 7.0.8, MariaDB 5.5.47, Zend OPCache, Vsftpd

Хочу проконсультироваться по поводу оптимальных конфигов PHP-FPM: http://pastebin.com/8HkGUDz6 и MariaDB: http://pastebin.com/KVz5u4Kh, с учетом того, что на сервере 512M оперативки и одно ядро GPU.

По поводу MariaDB - думал еще такой конфиг сделать, с увеличенными параметрами: http://pastebin.com/CktWJfgd, но не знаю, не перегну ли.

Скажите пжл, насколько оптимальны мои конфиги с учетом таких параметров сервера.

Спасибо.

 , , ,

stranger-ru
()

Затормозы перед запуском команд в Centos7

Форум — General

Всем привет.

Установлен:

CentOS Linux release 7.2.1511 (Core)
Selinux отключен.

Перед выполнением команд, подобных:

cd, mkdir, chown, chmode и т.д. 
все нормально, но вот перед выполнением команд, подобных:
php ..., mc, htop и т.д.
происходит затормоз в 2-5 секунд.

Даже не знаю куда копать, подскажите пжл в чем может быть дело?

 

stranger-ru
()

Проблема с сокетом NGINX, PHP-FPM

Форум — General

Всем привет.

Centos 7.2.1511, Nginx 1.6.3, PHP-FPM 7.0.8

при запуске всего этого в директории /var/run/php-fpm/ создается файл сокет php5-fpm.sock, но создается он с владельцем root, а нужно, чтобы создавался с владельцем nginx. Т.е. сейчас Nginx не может его прочитать.

Подскажите пжл, что в конфигах Nginx и PHP-FPM для этого нужно прописать?

Сейчас, что касается этого в конфиге Nginx:

user nginx;
pid /var/run/nginx.pid;
....
в конфиге PHP-FPM:
listen = /var/run/php-fpm/php5-fpm.sock
user = nginx
group = nginx
....

 , ,

stranger-ru
()

Проблема с доступом Nginx

Форум — General

Всем привет.

Centos 7.2.1511, Nginx 1.6.3

Есть директория сайта:

/web/sites/test.site/www/web

Есть директория для логов этого сайта:

/web/sites/test.site/log

Права на все директории и файлы начиная с /web и глубже nginx:nginx 755

Основная конфигурация Nginx:

user nginx;

worker_processes 1;
pid /var/run/nginx.pid;

error_log /var/log/nginx-error.log warn;

events {
	worker_connections 1024;
}

http {
	include mime.types;
    server_names_hash_bucket_size 64;

	default_type application/octet-stream;
	
	log_format main '$remote_addr - $remote_user [$time_local] '
	'"$request" $status $bytes_sent '
	'"$http_referer" "$http_user_agent" '
	'"$gzip_ratio"';

	log_format      common  '$remote_addr - - [$time_local] "$request" $status $bytes_sent "$http_referer" "$http_user_agent" $msec';

	sendfile on;

	tcp_nopush on;
	tcp_nodelay on;
	
	keepalive_timeout 65;
	
	server_tokens off;

	fastcgi_intercept_errors on;
	
	client_max_body_size 100M;

    server {
		listen 80 default;
		server_name localhost;
		deny all;
    }

    include /etc/nginx/conf.d/*.conf;
}	

Конфигурация на виртуальный хост:

server {
    listen 80; 

    server_name test.site;
    root        /web/sites/test.site/www/web;
    index index.php index.html index.htm;

    access_log  /web/sites/test.site/log/access.log;
    error_log   /web/sites/test.site/log/error.log;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    #location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
    #    try_files $uri =404;
    #}
    #error_page 404 /404.html;

    location ~ \.php$ {
		fastcgi_pass unix:/var/run/php-fpm/php5-fpm.sock;
		fastcgi_index index.php;

        
        fastcgi_param DOCUMENT_ROOT /web/sites/test.site/www/web/;
		fastcgi_param SCRIPT_FILENAME /web/sites/test.site/www/web/$fastcgi_script_name;
		fastcgi_param PATH_TRANSLATED /web/sites/test.site/www/web/$fastcgi_script_name;

		include fastcgi_params;
		fastcgi_param QUERY_STRING $query_string;
		fastcgi_param REQUEST_METHOD $request_method;
		fastcgi_param CONTENT_TYPE $content_type;
		fastcgi_param CONTENT_LENGTH $content_length;
		fastcgi_intercept_errors on;
		fastcgi_ignore_client_abort off;
		fastcgi_connect_timeout 60;
		fastcgi_send_timeout 180;
		fastcgi_read_timeout 180;
		fastcgi_buffer_size 128k;
		fastcgi_buffers 4 256k;
		fastcgi_busy_buffers_size 256k;
		fastcgi_temp_file_write_size 256k;
    }

	location ~ /\.(ht|svn|git) {
	            deny  all;
	}   
}

При попытке перезапустить Nginx получаю ошибку из-за невозможности доступа к /web/sites/test.site/log. Комментирую в конфигурационном файле виртуального хоста две строки:

#access_log  /web/sites/test.site/log/access.log;
#error_log   /web/sites/test.site/log/error.log;
тогда Nginx стартует, но при попытке доступа к сайту из браузера получаю:
403 Forbidden
в общем логе:
[error] 1930#0: *1 "/web/sites/test.site/www/web/index.php" is forbidden (13: Permission denied)

Понятно, что-то с доступом, но что не пойму. Помогите пжл разработься.

p.s. Подскажите так-же где можно посмотреть, какие есть bb-code на linux.org.ru. Помнится была отдельная страница со всеми bb-code, но не могу ее найти.

 ,

stranger-ru
()

Проблемы с файловой системой

Форум — General

Всем привет.

Сегодня упал VPS Centos6 (что-то с файловой системой), при попытке загрузиться пишет: ` *** An error occurred during the file system check *** Dropping you to a shell: the system will reboot ` написал хостеру. Хостер говорит «проверьте ФС через recuse». Recuse - это что?

Спасибо.

 ,

stranger-ru
()

Чтобы Apache не засыпал

Форум — General

Добрый вечер.

При простое Apache 2.2.22 (Win) в несколько минут он засыпает, и первый запрос после этого тормозит до 3 сек, последующие запросы отстреливают.

Подскажите, может какую-то настройку нужно прописать, чтобы этого не происходило, или еще что-то?

Спасибо.

 ,

stranger-ru
()

ReactJs и НЕ SPA

Форум — Web-development

Добрый день.

Смотрю в сторону ReactJs и на поверхности всплыл один глобальный вопрос.

Можно ли ReactJs использовать не в SPA приложениях? Т.е., рендер html производит сервер (PHP), а React только для динамических интерфейсов над этим отрендеренным сервером представлением - что то вроде, как сейчас с jQuery.

На первый взгляд не вижу развития такого сценария, потому что вроде если сервер будет рендерить html, то представление срендеренное на сервере должно иметь точное соответствие с тем представлением, которое рендерит компонент ReactJs и получается, что как минимум поддерживать одинаковый рендеринг html на сервере и на клиенте в ReactJs будет ужасно.

Изоморфное приложение - это вроде тоже SPA, с рендерингом на сервере средствами ReactJs, а меня интересует именно та ситуация, когда типовой рендеринг html на сервере средствами (php) и динамика на стороне клиента - как это было раньше через jQuery.

Можно ли как-то реализовать это с ReactJs?

Спасибо.

 

stranger-ru
()

Помогите настроить xDebug

Форум — Web-development

Добрый день.

Есть машина (хост-машина), на которой установлена виртуальная машина. На виртуальной машине стоит CentOS 6 + apache + nginx: apache крутится на 8080 порте, nginx на 80 порте.

конфигурация хоста (который хочу дебажить) apache:

<VirtualHost *:8080>
    ServerAdmin alex@troom.ru
    ServerName tests.local
    ServerAlias www.tests.local
    DocumentRoot /home/httpdocs/tests.local/www
    <Directory /home/httpdocs/tests.local/www>
        Options Indexes FollowSymLinks
    </Directory>
    ErrorLog /home/httpdocs/tests.local/log/apache_error_log
    CustomLog /home/httpdocs/tests.local/log/apache_access_log common
</VirtualHost>
конфигурация хоста (который хочу дебажить) nginx:
server {
        listen   80;
        server_name tests.local www.tests.local;
        access_log  /home/httpdocs/tests.local/log/nginx_access_log main;

        # Не кеширую статику
        #location ~* \.(jpg|jpeg|gif|png|ico|css|bmp|avi|flv|swf|js|doc|docx|rtf|pdf|xls|xlsx|rar|zip|tbz|7z|tgz|tar|gz|bz2|ppt|txt|mid|midi|wav|exe|ttf|eof|svg|woff)$ {
        #                root /home/httpdocs/tests.local/www/;
        #                access_log off;
        #                expires 30d;
        #                               add_header Cache-Control public;
        #}

        location ~ /\.ht {
                    deny  all;
        }

        location / {
            proxy_pass http://127.0.0.1:8080/;
            proxy_redirect off;
            log_not_found off;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Connection close;
            proxy_pass_header Content-Type;
            proxy_pass_header Content-Disposition;
            proxy_pass_header Content-Length;
            proxy_connect_timeout 60;
            proxy_send_timeout 90;
            proxy_read_timeout 90;
        }
}
настройки xDebug, /etc/php.d/xdebug.ini:
zend_extension=/usr/lib64/php/modules/xdebug.so
и php.ini:
[xdebug]
xdebug.default_enable=on
xdebug.remote_enable=on
xdebug.remote_autostart=on
xdebug.idekey="PHPSTORM"
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.auto_trace=off
xdebug.remote_log="/tmp/xdebug_log.log"
xdebug.profiler_output_dir="/tmp"

На хост-машине IDE PHPStorm, настройки xDebug: http://itmages.ru/image/view/3160521/49055edd http://itmages.ru/image/view/3160491/23862847

В Google Chrome установлено расширение xDebug helper.

При попытке дебага ничего не происходит, в лог xDebug пишется:

Log opened at 2015-11-02 12:05:34
I: Connecting to configured address/port: 127.0.0.1:9000.
E: Could not connect to client. :-(
Log closed at 2015-11-02 12:05:34
Понимаю, что скорее всего проблема с nginx, но что именно ему не хватает - не знаю.

Помогите пожалуйста разобраться.

 , , , ,

stranger-ru
()

Как настроить виртуальную машину

Форум — General

Добрый день.

На компе стоит виртуальная машина VM VirtualBox с Centos, сеть настроена как сетевой мост и машина имеет отдельный внутренний IP. На вирт. машине настроен веб-сервер. Все это работает через роутер wi-fi.

Все вроде бы удобно, через внутренний IP виртуальной машины получаю доступ к сайтам размещенным на ней, но!

Но если выключают интернет, то я почему-то теряю доступ к виртуальной машине, хотя по идее локальная сеть то должна продолжать работать по воздуху - и это очень не удобно. Т.е. при каждом отключении интернета я теряю связь с виртуальной машиной, не говорю уже про то, что если уйти из зоны доступа роутера.

Подскажите как быть, почему при выключении интернета я теряю доступ к вирт. машине? И что сделать, чтобы этого не было. Понимаю, что что-то нужно в роутере сделать, но что?

 , ,

stranger-ru
()

Ложится SWAP

Форум — General

Добрый вечер.

Такая ситуация, система не нагружена, Озу больше чем на 70% свободно, но SWAP почему-то растет и растет и в течении дня достигает 100%

Скажите пожалуйста, почему такое может быть?

 ,

stranger-ru
()

RSS подписка на новые темы