{"id":14966,"date":"2013-10-03T21:00:18","date_gmt":"2013-10-03T12:00:18","guid":{"rendered":"http:\/\/www.sssg.org\/blogs\/hiro345\/?p=14966"},"modified":"2013-10-05T12:13:06","modified_gmt":"2013-10-05T03:13:06","slug":"ubuntu-trac-basic%e8%aa%8d%e8%a8%bc%e3%81%aa%e3%81%a9%e3%82%82%e3%82%8d%e3%82%82%e3%82%8d","status":"publish","type":"post","link":"https:\/\/www.hiro345.net\/blogs\/hiro345\/archives\/14966.html","title":{"rendered":"Ubuntu, Trac, BASIC\u8a8d\u8a3c\u306a\u3069\u3082\u308d\u3082\u308d"},"content":{"rendered":"<p><a href=\"\/\/www.sssg.org\/blogs\/hiro345\/archives\/14958.html\">Ubuntu\u3067Trac\u3092\u52d5\u304b\u305d\u3046 | hiro345<\/a>\u306e\u7d9a\u304d\u3067\u3059\u3002<br \/>\n<!--more--><br \/>\npermission\u306e\u4e00\u89a7\u3092permission list\u3067\u8868\u793a\u3057\u3066\u3001XML_RPC\u304c\u3042\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u305f\u3089\u3001XML_RPC\u306e\u6a29\u9650\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"brush: bash; gutter: true\">\r\n$ sudo trac-admin \/var\/trac\/sample permission list\r\n$ sudo trac-admin \/var\/trac\/sample permission add authenticated XML_RPC\r\n<\/pre>\n<p>BASIC\u8a8d\u8a3c\u306e\u8a2d\u5b9a\u306fsite-avaidefault\u306b\u8ffd\u52a0\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"brush: bash; gutter: true\">\r\n&lt;VirtualHost *:80&gt;\r\n\u7565\r\n  &lt;LocationMatch &quot;\/trac\/[^\/]+\/login&quot;&gt;\r\n    AuthType Basic\r\n    AuthName &quot;Trac&quot;\r\n    AuthUserFile \/var\/trac\/.htpasswd\r\n    Require valid-user\r\n  &lt;\/LocationMatch&gt;\r\n\u7565\r\n&lt;\/VirtualHost&gt;\r\n<\/pre>\n<p>\u30d5\u30a1\u30a4\u30eb\u306e\u4f5c\u6210\u306fhtpasswd\u30b3\u30de\u30f3\u30c9\u3067\u884c\u3044\u307e\u3059\u3002\u6700\u521d\u306b\u30e6\u30fc\u30b6\u3092\u767b\u9332\u3057\u306a\u304c\u3089\/var\/trac\/.htpasswd\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3059\u308b\u5834\u5408\u306f\u6b21\u306e\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<pre class=\"brush: bash; gutter: true\">\r\n$ htpasswd -c \/var\/trac\/.htpasswd user001\r\n<\/pre>\n<p>\u6b21\u306e\u30e6\u30fc\u30b6\u3092\u767b\u9332\u3059\u308b\u3068\u304d\u306f\/var\/trac\/.htpasswd\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3057\u306a\u3044\u306e\u3067\u3001-c\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u306f\u4f7f\u3044\u307e\u305b\u3093\u3002<\/p>\n<pre class=\"brush: bash; gutter: true\">\r\n$ htpasswd \/var\/trac\/.htpasswd user002\r\n<\/pre>\n<p>\u65e5\u672c\u8a9e\u5316\u306f \/var\/trac\/sample\/conf\/trac.ini \u3092\u7de8\u96c6\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"brush: bash; gutter: true\">\r\n[inherit]\r\ntemplates_dir = \/usr\/share\/trac-ja-resource\/trac\/templates\r\n<\/pre>\n<p>wiki\u306e\u65e5\u672c\u8a9e\u5316\u306e\u305f\u3081\u306b\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"brush: bash; gutter: true\">\r\n$ sudo trac-admin \/var\/trac\/sample wiki load \\\r\n        \/usr\/share\/trac-ja-resource\/trac\/wiki\/default-pages\r\n<\/pre>\n<p>\u3061\u306a\u307f\u306b\u3001\u672a\u78ba\u8a8d\u3067\u3059\u304c\u3001mod_python\u3092\u4f7f\u3046\u5834\u5408\u306b\u306f\u6b21\u306e\u3088\u3046\u306b\u306a\u308b\u3088\u3046\u3067\u3059\u3002<\/p>\n<pre class=\"brush: bash; gutter: true\">\r\n&lt;Location &quot;\/trac&quot;&gt;\r\n SetHandler mod_python\r\n PythonHandler trac.web.modpython_frontend\r\n PythonOption TracUriRoot &quot;\/trac&quot;\r\n PythonOption TracEnvParentDir \/var\/trac\r\n PythonPath &quot;[&#039;\/usr\/share\/trac-ja-resource&#039;] + sys.path&quot;\r\n SetEnv TRAC_ENV \/var\/trac\/sample\r\n&lt;\/Location&gt;\r\n<\/pre>\n<p>PythonPath\u306e\u90e8\u5206\u3067\u65e5\u672c\u8a9e\u30ea\u30bd\u30fc\u30b9\u3092\u53c2\u7167\u3059\u308b\u3088\u3046\u306b\u8a18\u8ff0\u3059\u308b\u3053\u3068\u3067\u30e1\u30cb\u30e5\u30fc\u65e5\u672c\u8a9e\u5316\u304c\u3055\u308c\u308b\u3088\u3046\u3067\u3059\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ubuntu\u3067Trac\u3092\u52d5\u304b\u305d\u3046 | hiro345\u306e\u7d9a\u304d\u3067\u3059\u3002<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[1209,60,48,254],"class_list":["post-14966","post","type-post","status-publish","format-standard","hentry","category-linux","tag-linux","tag-python","tag-trac","tag-ubuntu"],"_links":{"self":[{"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/posts\/14966","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/comments?post=14966"}],"version-history":[{"count":3,"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/posts\/14966\/revisions"}],"predecessor-version":[{"id":14980,"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/posts\/14966\/revisions\/14980"}],"wp:attachment":[{"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/media?parent=14966"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/categories?post=14966"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hiro345.net\/blogs\/hiro345\/wp-json\/wp\/v2\/tags?post=14966"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}